TIMESTAMP_NTZ
type
Van toepassing op: Databricks SQL Databricks Runtime 13.3 LTS en hoger
Vertegenwoordigt waarden die bestaan uit waarden van velden jaar, maand, dag, uur, minuut en seconde. Alle bewerkingen worden uitgevoerd zonder rekening te houden met een tijdzone.
Deze functie is beschikbaar als openbare preview. Zie de sectie Notities voor niet-ondersteunde functies.
Als u deze functie wilt gebruiken in Delta Lake, moet u ondersteuning voor de tabel inschakelen. Functieondersteuning wordt automatisch ingeschakeld wanneer u een nieuwe Delta-tabel maakt met een kolom van het TIMESTAMP_NTZ
type. Deze functie wordt niet automatisch ingeschakeld wanneer u een kolom van het TIMESTAMP_NTZ
type toevoegt aan een bestaande tabel. Als u ondersteuning voor TIMESTAMP_NTZ
kolommen wilt inschakelen, moet ondersteuning voor de functie expliciet zijn ingeschakeld voor de bestaande tabel.
Het inschakelen van ondersteuning werkt uw tabelprotocol bij. Zie Hoe beheert Azure Databricks de compatibiliteit van Delta Lake-functies? Met de volgende opdracht wordt deze functie ingeschakeld:
ALTER TABLE table_name SET TBLPROPERTIES ('delta.feature.timestampNtz' = 'supported')
Syntaxis
TIMESTAMP_NTZ
Limieten
Het bereik van ondersteunde tijdstempels is -290308-12-21 BCE 19:59:06
aan +294247-01-10 CE 04:00:54
.
Letterlijke waarden
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]' }
+
of-
: een optioneel teken.-
geeft BCE aan,+
geeft CE (standaard) aan.yyyy
: Een jaar dat uit ten minste vier cijfers bestaat.[m]m
: Een maand van één of twee cijfers tussen 01 en 12.[d]d
: Een of twee cijferige dag tussen 01 en 31.h[h]
: Een of twee cijferig uur tussen 00 en 23.m[m]
: Een of twee cijferige minuut tussen 00 en 59.s[s]
: Een of twee cijfers seconde tussen 00 en 59.[ms][ms][ms][us][us][us]
: Maximaal 6 cijfers van fractionele seconden.
Als de onderdelen van de maand of dag niet zijn opgegeven, worden ze standaard ingesteld op 1. Als er geen uur-, minuut- of tweede onderdelen worden opgegeven, worden ze standaard ingesteld op 0.
Als de letterlijke waarde geen juiste tijdstempel vertegenwoordigt, treedt er een fout op in Azure Databricks.
Opmerkingen
TIMESTAMP_NTZ
heeft de volgende beperkingen:
- Ondersteuning voor Photon vereist Databricks Runtime 15.4 en hoger.
- Niet ondersteund in Databricks-gegevensbronnen die worden gebruikt in Power BI-, Tableau-, Databricks JDBC-/ODBC-stuurprogramma's of opensourcestuurprogramma's voor Databricks.
- Wordt niet ondersteund in Delta Sharing in Databricks Runtime 14.0 en hieronder.
TIMESTAMP_NTZ
het type wordt ondersteund in bestandsbronnen, waaronder Delta/Parquet/ORC/AVRO/JSON/CSV. Er is echter een beperking voor de schemadeductie voor JSON-/CSV-bestanden met TIMESTAMP_NTZ kolommen. Voor compatibiliteit met eerdere versies is het standaard uitgestelde tijdstempeltype vanspark.read.csv(...)
ofspark.read.json(...)
wordt het timesTAMP-type in plaats van TIMESTAMP_NTZ.
Voorbeelden
> 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