Typ: TIMESTAMP
Gäller för: Databricks SQL Databricks Runtime
Representerar värden som består av värden för fälten år, månad, dag, timme, minut och sekund, med den lokala tidszonen för sessionen. Tidsstämpelvärdet representerar en absolut tidpunkt.
Syntax
TIMESTAMP
Gränser
Intervallet för tidsstämplar som stöds är -290308-12-21 BCE 19:59:06 GMT
till +294247-01-10 CE 04:00:54 GMT
.
Literaler
TIMESTAMP 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][zoneId]' }
-
+
eller-
: Ett valfritt tecken.-
anger BCE,+
anger CE (standard). -
yyyy
: Ett år med minst fyra siffror. -
[m]m
: En eller tvåsiffrig månad mellan 01 och 12. -
[d]d
: En eller tvåsiffrig dag mellan 01 och 31. -
h[h]
: En eller tvåsiffrig timme mellan 00 och 23. -
m[m]
: En minut med en eller två siffror mellan 00 och 59. -
s[s]
: En eller två siffror sekund mellan 00 och 59. -
[ms][ms][ms][us][us][us]
: Upp till 6 siffror i bråksekunder.
zoneId
:
- Z – Zulu tidszon UTC+0
- +|-[h]h:[m]m
- Ett ID med något av prefixen UTC+, UTC-, GMT+, GMT-, UT+ eller UT-, och ett suffix i formaten:
- +|-h[h]
- +|-hh[:]mm
- +|-hh:mm:ss
- +|-hhmmss
- Regionbaserade zon-ID:er i formatet
<area>/<city>
, till exempelEurope/Paris
.
Om komponenterna månad eller dag inte har angetts är de som standard 1.
Om komponenterna timme, minut eller sekund inte anges är standardvärdet 0.
Om inget zoneId
anges är det standardinställningen för sessionstidszonen.
Om literalen inte representerar en korrekt tidsstämpel genererar Azure Databricks ett fel.
Kommentar
Tidsstämplar med lokal tidszon normaliseras internt och sparas i UTC. När värdet eller en del av det extraheras tillämpas tidszonen för den lokala sessionen.
Exempel
> SELECT TIMESTAMP'0000';
0000-01-01 00:00:00
> SELECT TIMESTAMP'2020-12-31';
2020-12-31 00:00:00
> SELECT TIMESTAMP'2021-7-1T8:43:28.123456';
2021-07-01 08:43:28.123456
> SELECT current_timezone(), TIMESTAMP'2021-7-1T8:43:28UTC+3';
America/Los_Angeles 2021-06-30 22:43:28
> SELECT CAST('1908-03-15 10:1:17' AS TIMESTAMP)
1908-03-15 10:01:17
> SELECT TIMESTAMP'+10000';
+10000-01-01 00:00:00