Tipo deTIMESTAMP
Se aplica a: Databricks SQL Databricks Runtime
Representa valores que de campos de año, mes, día, hora, minuto y segundo, con la zona horaria local de la sesión. El valor de marca de tiempo representa un punto absoluto en el tiempo.
Sintaxis
TIMESTAMP
Límites
El intervalo de marca de tiempo admitido es de -290308-12-21 BCE 19:59:06 GMT
a +294247-01-10 CE 04:00:54 GMT
.
Literales
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]' }
+
o-
: un signo opcional.-
indica BCE,+
indica CE (valor predeterminado).yyyy
: un año que comprende al menos cuatro dígitos.[m]m
: mes de uno o dos dígitos entre 01 y 12.[d]d
: día de uno o dos dígitos entre 01 y 31.h[h]
: día de uno o dos dígitos entre 00 y 23.m[m]
: minuto de uno o dos dígitos entre 00 y 59.s[s]
: un segundo de uno o dos dígitos entre 00 y 59.[ms][ms][ms][us][us][us]
: hasta 6 dígitos de fracciones de segundo.
zoneId
:
- Z - zona horaria Zulú UTC+0
- +|-[h]h:[m]m
- Un identificador con uno de los prefijos UTC+, UTC-, GMT+, GMT-, UT+ o UT-, y un sufijo en los formatos:
- +|-h[h]
- +|-hh[:]mm
- +|-hh:mm:ss
- +|-hhmmss
- Los identificadores de zona basados en regiones con el formulario
<area>/<city>
, por ejemplo,Europe/Paris
.
Si no se especifican los componentes de mes o día, el valor predeterminado es 1.
Si no se especifican componentes de hora, minuto o segundo, el valor predeterminado es 0.
Si no se especifica zoneId
, se utiliza la zona horaria de sesión como valor predeterminado.
Si el literal no representa una marca de tiempo adecuada de Azure Databricks genera un error.
Notas
Las marcas de tiempo con zona horaria local se normalizan internamente y se conservan en UTC. Cada vez que se extrae el valor o una parte de él, se aplica la zona horaria de la sesión local.
Ejemplos
> 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