TIMESTAMP_NTZ
típus
A következőkre vonatkozik: Databricks SQL Databricks Runtime 13.3 LTS és újabb
Az év, a hónap, a nap, az óra, a perc és a másodperc mezőiből álló értékeket jelöli. Minden műveletet anélkül hajtunk végre, hogy az időzónát figyelembe vesszük.
Ez a funkció a nyilvános előzetes verzióban érhető el. A nem támogatott funkciókért tekintse meg a Megjegyzések szakaszt.
Ha ezt a funkciót a Delta Lake-en szeretné használni, engedélyeznie kell a tábla támogatását. A funkciótámogatás automatikusan engedélyezve van, amikor új Delta-táblázatot hoz létre egy típusoszlopmal TIMESTAMP_NTZ
. Ha egy meglévő táblához típusoszlopot TIMESTAMP_NTZ
ad hozzá, a rendszer nem engedélyezi automatikusan. Az oszlopok támogatásának TIMESTAMP_NTZ
engedélyezéséhez a funkció támogatását explicit módon engedélyezni kell a meglévő táblához.
A támogatás engedélyezése frissíti a táblaprotokollt. Lásd : Hogyan kezeli az Azure Databricks a Delta Lake-funkciók kompatibilitását?. A következő parancs engedélyezi ezt a funkciót:
ALTER TABLE table_name SET TBLPROPERTIES ('delta.feature.timestampNtz' = 'supported')
Syntax
TIMESTAMP_NTZ
Korlátok
A támogatott időbélyegek tartománya a -290308-12-21 BCE 19:59:06
következő +294247-01-10 CE 04:00:54
: .
Literálok
TIMESTAMP_NTZ timestampString
timestampString
{ '[+|-]yyyy[...]' |
'[+|-]yyyy[...]-[m]m' |
'[+|-]yyyy[...]-[m]m-[d]d' |
'[+|-]yyyy[...]-[m]m-[d]d ' |
'[+|-]yyyy[...]-[m]m-[d]d[T][h]h[:]' |
'[+|-]yyyy[..]-[m]m-[d]d[T][h]h:[m]m[:]' |
'[+|-]yyyy[...]-[m]m-[d]d[T][h]h:[m]m:[s]s[.]' |
'[+|-]yyyy[...]-[m]m-[d]d[T][h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]' }
+
vagy-
: Választható jel.-
A BCE-t,+
a CE-t (alapértelmezett) jelzi.yyyy
: Legalább négy számjegyből álló év.[m]m
: Egy vagy két számjegyű hónap 01 és 12 között.[d]d
: Egy vagy két számjegyű nap 01 és 31 között.h[h]
: Egy vagy két számjegyű óra 00 és 23 között.m[m]
: Egy vagy két számjegyű perc 00 és 59 között.s[s]
: Egy vagy két számjegy másodperc 00 és 59 között.[ms][ms][ms][us][us][us]
: Legfeljebb 6 számjegy tört másodpercig.
Ha a hónap vagy a nap összetevő nincs megadva, alapértelmezés szerint 1. Ha az óra, a perc vagy a második összetevő nincs megadva, alapértelmezés szerint 0 lesz.
Ha a literál nem felel meg a megfelelő időbélyegnek, az Azure Databricks hibát jelez.
Jegyzetek
TIMESTAMP_NTZ
a következő korlátozásokkal rendelkezik:
- A Photon-támogatáshoz a Databricks Runtime 15.4-et és újabb verzióit kell támogatni.
- A Power BI, Tableau, Databricks JDBC/ODBC-illesztőprogramokban vagy Databricks nyílt forráskód illesztőprogramokban használt Databricks-adatforrások nem támogatottak.
- Nem támogatott a Delta Sharing a Databricks Runtime 14.0-s és újabb verzióban.
TIMESTAMP_NTZ
a típus támogatott a fájlforrásokban, beleértve a Delta/Parquet/ORC/AVRO/JSON/CSV fájlokat. Az TIMESTAMP_NTZ oszlopokat tartalmazó JSON-/CSV-fájlok sémakövetkeztetése azonban korlátozott. A visszamenőleges kompatibilitás érdekében az alapértelmezett késleltetett időbélyegtípus a TIMESTAMP_NTZ helyett a TIMESTAMP típusból származikspark.read.csv(...)
vagyspark.read.json(...)
az lesz.
Példák
> SELECT TIMESTAMP_NTZ'0000';
0000-01-01 00:00:00
> SELECT TIMESTAMP_NTZ'2020-12-31';
2020-12-31 00:00:00
> SELECT TIMESTAMP_NTZ'2021-7-1T8:43:28.123456';
2021-07-01 08:43:28.123456
> SELECT current_timezone(), CAST(TIMESTAMP '2021-7-1T8:43:28' as TIMESTAMP_NTZ);
America/Los_Angeles 2021-07-01 08:43:28
> SELECT CAST('1908-03-15 10:1:17' AS TIMESTAMP_NTZ)
1908-03-15 10:01:17
> SELECT TIMESTAMP_NTZ'+10000';
+10000-01-01 00:00:00