TIMESTAMPtype (databricks SQL)

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 June 23 -5877641 CEJuly 11 +5881580 CE.

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: jeden lub dwa miesiące z zakresu 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 oparte na regionie w formularzu <area>/<city>, Europe/Parisna przykład .

Jeśli składniki miesiąca lub dnia nie zostaną określone domyślnie 1. Jeśli nie określono wartości godzinowej, minutowej lub drugiej składników, domyślnie mają wartość 0. Jeśli nie zoneId określono wartości domyślnej strefy czasowej sesji,

Jeśli literał reprezentuje prawidłowy znacznik czasu usługi Azure Databricks, zgłasza błąd.

Uwagi

Sygnatury czasowe z lokalną strefą czasową są znormalizowane wewnętrznie i utrwalane w formacie UTC. Za każdym razem, gdy zostanie wyodrębniona wartość lub część z niej, zostanie zastosowana strefa czasowa sesji lokalnej.

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