Typ: TIMESTAMP
Dotyczy: Databricks SQL Databricks Runtime
Reprezentuje wartości składające się z wartości pól roku, miesiąca, dnia, godziny, minuty i sekundy z lokalną strefą czasową sesji. Wartość znacznika czasu reprezentuje bezwzględny punkt w czasie.
Składnia
TIMESTAMP
Limity
Obsługiwany zakres sygnatur czasowych to -290308-12-21 BCE 19:59:06 GMT
+294247-01-10 CE 04:00:54 GMT
.
Literały
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]' }
+
lub-
: opcjonalny znak.-
wskazuje BCE,+
wskazuje CE (wartość domyślna).yyyy
: rok składający się z co najmniej czterech cyfr.[m]m
: miesiąc z przedziału od 01 do 12.[d]d
: jeden lub dwa cyfry dnia z zakresu od 01 do 31.h[h]
: jedna lub dwie cyfry godziny z zakresu od 00 do 23.m[m]
: jedna lub dwie cyfry minuty z zakresu od 00 do 59.s[s]
: jedna lub dwie cyfry sekundy z zakresu od 00 do 59.[ms][ms][ms][us][us][us]
: Maksymalnie 6 cyfr ułamkowych sekund.
zoneId
:
- Z - Strefa czasowa Zulu UTC+0
- +|-[h]h:[m]m
- Identyfikator z jednym z prefiksów UTC+, UTC-, GMT+, GMT-, UT+ lub UT-, a sufiks w formatach:
- +|-h[h]
- +|-hh[:]mm
- +|-hh:mm:ss
- +|-hhmmss
- Identyfikatory stref opartych na regionie w formularzu
<area>/<city>
, na przykładEurope/Paris
.
Jeśli składniki miesiąca lub dnia nie są określone, domyślnie mają wartość 1.
Jeśli składniki godzinowe, minutowe lub drugie nie zostaną określone jako domyślne 0.
Jeśli nie zoneId
zostanie określona wartość domyślna dla strefy czasowej sesji,
Jeśli literał nie reprezentuje odpowiedniego znacznika czasu, usługa Azure Databricks zgłasza błąd.
Uwagi
Znaczniki czasu z lokalną strefą czasową są znormalizowane wewnętrznie i utrwalane w formacie UTC. Za każdym razem, gdy wartość lub część jest wyodrębniona, strefa czasowa sesji lokalnej jest stosowana.
Przykłady
> 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