Datetime minták
A következőkre vonatkozik: Databricks SQL Databricks Runtime
Az Azure Databricksben számos gyakori forgatókönyv létezik a datetime használathoz:
- A CSV- és JSON-adatforrások a mintasztringet használják a datetime-tartalmak elemzéséhez és formázásához.
- Dátum/idő függvények, amelyek a konvertáláshoz vagy onnan való
DATE
TIMESTAMP
konvertáláshozSTRING
kapcsolódnak. Például:
Mintatábla
Az Azure Databricks a következő táblázatban mintabetűket használ a dátum- és időbélyeg-elemzéshez és -formázáshoz:
Szimbólum | Értelmezés | Bemutatók | Példák |
---|---|---|---|
G | korszak | text | HIRDETÉS; Anno Domini |
y | év | év | 2020; 20 |
D | év napja | szám(3) | 189 |
M/L | év hónapja | hónap | 7; 07; Júl; Július |
d | hónap napja | szám(3) | 28 |
Q/q | negyedéves | szám/szöveg | 3; 03; 3. negyedév; 3. negyedév |
E | hét napja | text | Kedd; Kedd |
F | a hónap hét napjának igazítása | szám(1) | 3 |
egy | a nap egy órájában | am-pm | PM |
h | óra-óra-pm (1-12) | szám(2) | 12 |
K | óra-pm (0-11) | szám(2) | 0 |
k | óra-nap (1-24) | szám(2) | 0 |
H | napi óra (0-23) | szám(2) | 0 |
m | perc/óra | szám(2) | 30 |
s | másodperces | szám(2) | 55 |
S | másodperc törtrésze | frakció | 978 |
V | időzóna azonosítója | zónaazonosító | Amerika/Los_Angeles; Z; -08:30 |
z | időzóna neve | zónanév | Csendes-óceáni téli idő; PST |
O | honosított zónaeltolás | eltolás-O | GMT+8; GMT+08:00; UTC-08:00; |
X | "Z" zónaeltolás nullához | eltolás-X | Z; -08; -0830; -08:30; -083015; -08:30:15; |
x | zónaeltolás | eltolás-x | +0000; -08; -0830; -08:30; -083015; -08:30:15; |
Z | zónaeltolás | eltolás-Z | +0000; -0800; -08:00; |
‘ | szöveg feloldójele | Határoló | |
‘’ | egy idézőjel | betű szerinti | ‘ |
[ | nem kötelező szakaszkezdés | ||
] | nem kötelező szakaszvég |
A mintabetűk száma határozza meg a formátumot.
Szöveg: A szövegstílus a használt mintabetűk száma alapján van meghatározva. A 4-nél kevesebb mintás betűk a rövid szöveges űrlapot használják, általában rövidítést, például a hét minden napján hétfő lehet a "Mon" kimenet. Pontosan 4 minta betű fogja használni a teljes szöveges űrlapot, általában a teljes leírást, például a hét minden napján hétfő lehet kimenet "hétfő". 5 vagy több betű sikertelen lesz.
Szám(n): Az n itt az ilyen típusú dátum/idő minta által használható betűk maximális számát jelöli. Ha a betűk száma egy, akkor az érték a számjegyek minimális számával és kitöltés nélküli kimenet. Ellenkező esetben a program a számjegyek számát használja a kimeneti mező szélességeként, szükség szerint nulla kitöltéssel.
Szám/szöveg: Ha a mintabetűk száma 3 vagy nagyobb, használja a fenti szövegszabályokat. Ellenkező esetben használja a fenti Szám szabályokat.
Tört: Használjon egy vagy több (legfeljebb 9) összefüggő
'S'
karaktert, példáulSSSSSS
a másodperc törtrészének elemzéséhez és formázásához. Elemzés esetén az elfogadható törthossz lehet [1, az egybefüggő "S" szám. A formázáshoz a tört hosszát a nullákkal egybefüggő "S" számra kell kipárnázni. Az Azure Databricks támogatja a mikro-másodperc pontosságú dátumidőt, amely legfeljebb 6 jelentős számjegyből áll, de a másodperc nano-of-másodpercét csonkolt, túllépett részekkel elemezheti.Év: A betűk száma határozza meg a mező minimális szélességét, amely alatt a kitöltést használják. Ha a betűk száma kettő, akkor a rendszer csökkentett kétjegyű űrlapot használ. Nyomtatáshoz ez a jobb szélső két számjegyet adja ki. Az elemzéshez ez a 2000-es alapérték alapján lesz elemezve, ami egy évet eredményez a 2000 és 2099 közötti tartományon belül. Ha a betűk száma kisebb, mint négy (de nem kettő), akkor a jel csak negatív évekre vonatkozik. Ellenkező esetben a jel akkor jelenik meg, ha a pad szélessége túllépi a "G" értéket. 7 vagy több betű sikertelen lesz.
Hónap: A Szám/Szöveg szabályt követi. A szöveges űrlap betűktől függ –
'M'
a "standard" űrlapot jelöli, és'L'
"önálló" formátumú. Ez a két forma csak bizonyos nyelveken különbözik. Oroszul például az "Июль" a július önálló formája, az "Июля" pedig a standard forma. Íme néhány példa az összes támogatott mintabetűre:'M'
vagy'L'
: Egy év hónapszáma 1-től kezdődően. Nincs különbség'M'
az és'L'
a . Az 1 és 9 közötti hónap kitöltés nélkül nyomtatható.> SELECT date_format(date '1970-01-01', 'M'); 1 > SELECT date_format(date '1970-12-01', 'L'); 12
'MM'
vagy'LL'
: Egy év hónapszáma 1-től kezdődően. Az 1–9. hónapban nulla kitöltést adunk hozzá.> SELECT date_format(date '1970-1-01', 'LL'); 01 > SELECT date_format(date '1970-09-01', 'MM'); 09
'MMM'
: Rövid szöveges ábrázolás a standard formában. A hónap mintának nem csak egy különálló hónapnak kell lennie a dátummintákban, kivéve azokat a területi beállításokat, ahol nincs különbség az önálló és az önálló űrlapok között, például az angol nyelven.> 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'
: teljes szöveges havi ábrázolás normál formában. A hónapokat dátumok/időbélyegek részeként elemzi/formázja.> 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: Ez a kimenet az am-pm-of-day. A mintabetűk számának 1-nek kell lennie.
Zónaazonosító(V): Ez az időzóna azonosítóját jeleníti meg. A mintabetűk számának 2-nek kell lennie.
Zónanevek(z): Ez az időzóna-azonosító megjelenítendő szöveges nevét adja eredményül. Ha a betűk száma egy, kettő vagy három, akkor a rövid név kimenet. Ha a betűk száma négy, akkor a teljes név kimenet. Öt vagy több levél sikertelen lesz.
X és x eltolás: Ez formázza az eltolást a mintabetűk száma alapján. Egy betű csak az órát adja ki, például a "+01" értéket, kivéve, ha a perc nem nulla, ebben az esetben a perc is kimenet, például "+0130". Két betű adja ki az órát és a percet kettőspont nélkül, például "+0130". Három betű adja ki az órát és a percet, kettősponttal, például "+01:30". Négy betű adja ki az órát és a percet, és nem kötelező másodpercben, kettőspont nélkül, például "+013015". Öt betű adja ki az órát és a percet, valamint a másodpercet is, kettősponttal, például "+01:30:15". Hat vagy több levél sikertelen lesz. Az "X" mintabetű (nagybetű) "Z" értéket ad ki, ha az eltolás értéke nulla, míg az "x" mintabetű (kisbetű) a "+00", a "+0000" vagy a "+00:00" értéket adja eredményül.
O eltolás: Ez formázza a honosított eltolást a mintabetűk száma alapján. Az egyik betű a honosított eltolás rövid formáját adja ki, amely honosított eltolási szöveg, például "GMT", óra kezdő nulla nélkül, választható kétjegyű perc és másodperc, ha nem nulla, és kettőspont, például "GMT+8". Négy betű adja ki a teljes űrlapot, amely honosított eltolási szöveg, például "GMT" kétjegyű óra- és percmezővel, opcionális második mezővel, ha nem nulla, és kettőspont, például "GMT+08:00". Minden más betűszám sikertelen lesz.
Eltolás Z: Ez formázza az eltolást a mintabetűk száma alapján. Egy, két vagy három betű az órát és a percet adja ki kettőspont nélkül, például "+0130". A kimenet "+0000", ha az eltolás nulla. Négy betű a honosított eltolás teljes formáját adja ki, amely négy eltolás-O betűnek felel meg. A kimenet a megfelelő honosított eltolási szöveg, ha az eltolás nulla. Öt betű adja ki az órát, a percet és a másodpercet, ha nem nulla, kettősponttal. "Z" kimenetet ad ki, ha az eltolás nulla. Hat vagy több levél sikertelen lesz.
Nem kötelező szakasz kezdete és vége: Egy választható szakasz definiálására használható
[]
, és lehet, hogy beágyazott. A formázás során az összes érvényes adat kimenete még az opcionális szakaszban is szerepel. Az elemzés során előfordulhat, hogy a teljes szakasz hiányzik az elemzési sztringből. A választható szakaszokat a rendszer elindítja[
és befejezi]
(vagy a minta végén).Az "E", az "F", a "q" és a "Q" szimbólumok csak dátum/idő formázáshoz használhatók, például.
date_format
A dátum/idő elemzéshez nem használhatók, például.to_timestamp