Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Databricks SQL
Databricks Runtime
Istnieje kilka typowych scenariuszy użycia daty/godziny w usłudze Azure Databricks:
- Źródła danych CSV i JSON używają ciągu wzorca do analizowania i formatowania zawartości daty/godziny.
- Funkcje daty/godziny związane z konwersją
STRING
na lub zDATE
lubTIMESTAMP
. Na przykład:
Tabela wzorów
Usługa Azure Databricks używa liter wzorca w poniższej tabeli na potrzeby analizowania i formatowania dat oraz znaczników czasu.
Symbol | Znaczenie | Prezentacja | Przykłady |
---|---|---|---|
G | epoka | tekst | REKLAMA; N.e |
y | rok | rok | 2020; 20 |
D | dzień roku | liczba(3) | 189 |
M/L | miesiąc roku | miesiąc | 7; 07; Lip; Lipiec |
d | dzień miesiąca | liczba(3) | 28 |
Q/q | kwartał roku | liczba/tekst | 3; 03; Q3; Trzeci kwartał |
E | dzień tygodnia | tekst | Wt; Wtorek |
F | wyrównany dzień tygodnia w miesiącu | number(1) | 3 |
a | przed południem-po południu-rowo dnia | am-pm | po południu |
h | godzina zegarowa AM/PM (1-12) | number(2) | 12 |
K | godzina am-pm (0-11) | number(2) | 0 |
k | godzina dnia (1-24) | number(2) | 0 |
H | godzina dnia (0–23) | number(2) | 0 |
m | minuta godziny | liczba(2) | 30 |
s | sekunda minuty | liczba(2) | 55 |
S | ułamek sekundy | ułamek | 978 |
V | identyfikator strefy czasowej | identyfikator strefy | Ameryka/Los_Angeles; Z; -08:30 |
z | nazwa strefy czasowej | nazwa strefy | Pacyfik (czas standardowy); PST |
O | lokalne przesunięcie strefy czasowej | offset-O | GMT+8; GMT+08:00; UTC-08:00; |
X | przesunięcie czasowe strefy 'Z' dla zera | przesunięcie X | Z; -08; -0830; -08:30; -083015; -08:30:15; |
x | przesunięcie czasowe strefy | przesunięcie x | +0000; -08; -0830; -08:30; -083015; -08:30:15; |
Z | przesunięcie czasowe strefy | przesunięcie Z | +0000; -0800; -08:00; |
' | ucieczka tekstu | Ogranicznik | |
'' | pojedynczy cudzysłów | dosłowny | ' |
[ | rozpoczęcie opcjonalnej sekcji | ||
] | opcjonalny koniec sekcji |
Liczba liter wzorca określa format.
Tekst: styl tekstu jest określany na podstawie liczby używanych liter wzorca. Mniej niż 4 litery wzorca będą używać krótkiej formy tekstowej, zazwyczaj skrótu, np. dzień tygodnia poniedziałek może wyświetlić "pon.". Dokładnie 4 litery wzorca będą używać pełnej formy tekstowej, zazwyczaj pełny opis dnia, np. dzień tygodnia poniedziałek może wyświetlić "poniedziałek". 5 lub więcej liter zakończy się niepowodzeniem.
Number(n): N w tym miejscu reprezentuje maksymalną liczbę liter tego typu wzorca daty/godziny. Jeśli liczba liter jest jedna, wartość jest zwracana przy użyciu minimalnej liczby cyfr i bez dopełnienia. W przeciwnym razie liczba cyfr jest używana jako szerokość pola wyjściowego, a wartość jest uzupełniana zerami w miarę potrzeby.
Liczba/tekst: jeśli liczba liter wzorca wynosi 3 lub więcej, użyj powyższych reguł tekstowych. W przeciwnym razie użyj powyższych zasad dotyczących liczby.
Ułamek: użyj jednego lub więcej (do 9) ciągłych znaków
'S'
, na przykładSSSSSS
, aby przeanalizować i sformatować ułamek sekundy. W przypadku parsowania dopuszczalna długość ułamka może wynosić [1, liczba ciągłych 'S']. W przypadku formatowania długość ułamka byłaby dopełniona liczbą ciągłych wartości "S" zerami. Usługa Azure Databricks obsługuje wartości daty i czasu o dokładności mikrosekundowej, która ma maksymalnie 6 cyfr znaczących, ale może analizować wartości nanosekundowe, z obcięciem przekroczonej części.Rok: liczba liter określa minimalną szerokość pola, poniżej której stosowane jest dopełnienie. Jeśli liczba liter to dwie, zostanie użyta skrócona dwucyfrowa forma. Poprawne dane wyjściowe to dwie ostatnie cyfry. Podczas parsowania nastąpi analiza z użyciem wartości bazowej 2000, co zaowocuje rokiem w przedziale od 2000 do 2099 włącznie. Jeśli liczba liter jest mniejsza niż cztery (ale nie równa dwóm), znak jest wyświetlany tylko przy ujemnych latach. W przeciwnym razie znak jest wynikiem wyjściowym, jeśli szerokość podkładki zostanie przekroczona, gdy "G" nie jest obecny. 7 lub więcej liter zakończy się niepowodzeniem.
Miesiąc: stosuje się do zasady liczba/tekst. Formularz tekstowy jest zależny od liter —
'M'
oznacza formularz "standardowy" i'L'
jest przeznaczony dla formularza autonomicznego. Te dwie formy różnią się tylko w niektórych językach. Na przykład w języku rosyjskim "Июль" jest autonomiczną formą lipca, a "Июля" jest standardową formą. Oto przykłady wszystkich obsługiwanych liter wzorca:'M'
lub'L'
: Numer miesiąca w roku rozpoczynający się od 1. Nie ma różnicy między'M'
i'L'
. Miesiące od 1 do 9 są wyświetlane bez wypełnienia.> SELECT date_format(date '1970-01-01', 'M'); 1 > SELECT date_format(date '1970-12-01', 'L'); 12
'MM'
lub'LL'
: Numer miesiąca w roku rozpoczynający się od 1. Dodawanie zer jest stosowane dla miesięcy 1–9.> SELECT date_format(date '1970-1-01', 'LL'); 01 > SELECT date_format(date '1970-09-01', 'MM'); 09
'MMM'
: krótka reprezentacja tekstowa w postaci standardowej. Wzorzec miesiąca powinien być częścią wzorca daty, a nie tylko występować jako samodzielny miesiąc, z wyjątkiem lokalizacji, w których nie ma różnicy między formą podstawową i samodzielną, tak jak w języku angielskim.> SELECT date_format(date '1970-01-01', 'd MMM'); 1 Jan -- Passing a format pattern to to_csv() > SELECT to_csv(named_struct('date', date '1970-01-01'), map('dateFormat', 'dd MMM', 'locale', 'RU')); 01 янв.
'MMMM'
: pełna tekstowa reprezentacja miesiąca w standardowej formie. Służy do analizowania/formatowania miesięcy w ramach dat/znaczników czasu.> SELECT date_format(date '1970-01-01', 'd MMMM'); 1 January -- Passing a format pttern to to_csv() > SELECT to_csv(named_struct('date', date '1970-01-01'), map('dateFormat', 'd MMMM', 'locale', 'RU')); 1 января
am-pm: To wyświetla porę dnia przed południem-po popołudniu. Liczba liter wzorca musi być 1.
Identyfikator strefy (V): Spowoduje to wyświetlenie identyfikatora strefy czasowej. Liczba liter wzorca musi być 2.
Nazwy stref (z): spowoduje to wyświetlenie tekstowej nazwy identyfikatora strefy czasowej. Jeśli liczba liter wynosi jeden, dwa lub trzy, wówczas wyświetlana jest krótka nazwa. Jeśli liczba liter wynosi cztery, to wyświetlana jest pełna nazwa. Pięć lub więcej liter zakończy się niepowodzeniem.
Przesunięcie X i x: to formatuje przesunięcie na podstawie liczby liter wzorca. Jeden znak oznacza tylko godzinę, taką jak "+01", chyba że minuta jest inna niż zero, w takim przypadku zwraca również minutę, taką jak "+0130". Dwie litery zwracają format godziny i minuty bez dwukropka, na przykład "+0130". Trzy litery wyświetlają godzinę i minutę z dwukropkiem, takim jak "+01:30". Cztery litery wyświetlają godzinę i minutę i opcjonalną sekundę bez dwukropka, takiego jak "+013015". Pięć liter zwraca godzinę i minutę i opcjonalną sekundę z dwukropkiem, takim jak "+01:30:15". Sześć lub więcej liter spowoduje niepowodzenie. Litera wzorca "X" (wielka litera) wyświetli "Z", gdy przesunięcie, które ma być wyświetlane, wynosi zero, podczas gdy litera wzorca "x" (mała litera) wyświetli "+00", "+0000" lub "+00:00".
Przesunięcie O: formatuje zlokalizowane przesunięcie na podstawie liczby liter wzorca. Jedna litera reprezentuje krótką formę zlokalizowanego przesunięcia, takiego jak "GMT", z godziną bez zera wiodącego oraz opcjonalnie 2-cyfrowymi minutami i sekundami, jeśli są niezerowe, z dwukropkiem, na przykład "GMT+8". Cztery litery powodują wygenerowanie pełnej formy, która jest zlokalizowanym tekstem przesunięcia czasowego, takim jak "GMT", z polem godziny i minuty jako liczby dwucyfrowe, opcjonalnym drugim polem, jeśli niezerowe, oraz dwukropkiem, na przykład "GMT+08:00". Każda inna liczba liter zakończy się niepowodzeniem.
Przesunięcie Z: jest formatowane na podstawie liczby liter wzorca. Jedna, dwie lub trzy litery zwraca godzinę i minutę, bez dwukropka, takiego jak "+0130". Dane wyjściowe to "+0000", gdy przesunięcie ma wartość zero. Cztery litery generują pełną formę zlokalizowanego przesunięcia czasowego, co jest równoważne czterem literom Offset-O. Wynikiem jest odpowiadający zlokalizowany tekst przesunięcia, jeśli przesunięcie wynosi zero. Pięć znaków zwraca godzinę, minutę, opcjonalnie sekundę, jeśli jest niezerowa, z dwukropkiem. Zwraca wartość "Z", jeśli przesunięcie ma wartość zero. Sześć lub więcej liter spowoduje niepowodzenie.
Opcjonalne rozpoczęcie i zakończenie sekcji: użyj polecenia
[]
, aby zdefiniować opcjonalną sekcję i być może zagnieżdżoną. Podczas formatowania wszystkie prawidłowe dane są danymi wyjściowymi, nawet w sekcji opcjonalnej. Podczas analizowania w ciągu przeanalizowanym może brakować całej sekcji. Opcjonalna sekcja jest rozpoczynana przez[
i kończona przy użyciu]
(lub na końcu wzorca).Symbole "E", "F", "q" i "Q" mogą być używane tylko do formatowania daty/godziny, np.
date_format
. Nie są one dozwolone do analizowania daty/godziny, np.to_timestamp
.