TIMESTAMP típus

A következőkre vonatkozik:jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime

Az év, hónap, nap, óra, perc és másodperc mezők értékeit jelöli, a munkamenet helyi időzónájával együtt. Az időbélyeg értéke abszolút időpontot jelöl.

Syntax

TIMESTAMP | TIMESTAMP_LTZ

Korlátok

A támogatott időbélyegek tartománya a -290308-12-21 BCE 19:59:06 GMT következő +294247-01-10 CE 04:00:54 GMT: .

Literálok

TIMESTAMP timestampString

TIMESTAMP_LTZ 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]' }
  • + 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.

zoneId:

  • Z – Zulu időzóna UTC+0
  • +|-[h]h:[m]m
  • Az UTC+, UTC-, GMT+, GMT-, UT+ vagy UT előtaggal rendelkező azonosító, valamint egy utótag a következő formátumban:
    • +|-h[h]
    • +|-hh[:]mm
    • +|-hh:mm:ss
    • +|-hhmmss
  • Régióalapú zónaazonosítók például <area>/<city>az űrlaponEurope/Paris.

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 nincs zoneId megadva, alapértelmezés szerint a munkamenet időzónája lesz,

Ha a literál nem felel meg a megfelelő időbélyegnek, az Azure Databricks hibát jelez.

Jegyzetek

A helyi időzónával rendelkező időbélyegek belsőleg normalizálva vannak, és UTC-ben vannak megőrzve. Amikor a rendszer kinyeri az értéket vagy annak egy részét, a helyi munkamenet időzónája lesz alkalmazva.

Példák

> 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