Funciones de marca de tiempo en SQL estándar

BigQuery es compatible con las siguientes funciones de TIMESTAMP.

NOTA: Estas funciones muestran un error de entorno de ejecución si se produce un desbordamiento; los valores de los resultados están delimitados por la fecha definida y los valores mínimo/máximo de la marca de tiempo.

CURRENT_TIMESTAMP

CURRENT_TIMESTAMP()

Descripción

Los paréntesis son opcionales. Esta función maneja los segundos bisiestos; para ello, los coloca en una ventana de 20 horas alrededor del segundo bisiesto insertado. CURRENT_TIMESTAMP() produce un valor TIMESTAMP que es continuo, no es ambiguo, tiene exactamente 60 segundos por minuto y no repite los valores durante el segundo bisiesto.

Tipos de entrada admitidos

No aplicable

Tipo de datos del resultado

TIMESTAMP

Ejemplo

SELECT CURRENT_TIMESTAMP() as now;

+-------------------------------+
| now                           |
+-------------------------------+
| 2016-05-16 18:12:47.145482+00 |
+-------------------------------+

EXTRACT

EXTRACT(part FROM timestamp_expression [AT TIME ZONE tz_spec])

Descripción

Muestra un valor INT64 que corresponde a la part especificada de una timestamp_expression suministrada.

A continuación, se mencionan los valores part que se permiten:

  • MICROSECOND
  • MILLISECOND
  • SECOND
  • MINUTE
  • HOUR
  • DAYOFWEEK
  • DAY
  • DAYOFYEAR
  • WEEK: muestra el número de semana de la fecha en el rango [0, 53]. Las semanas comienzan con el domingo y las fechas anteriores al primer domingo del año están en la semana 0.

  • WEEK(<WEEKDAY>): muestra el número de semana de timestamp_expression en el rango [0, 53]. Las semanas comienzan en WEEKDAY. Los valores datetime anteriores al primer WEEKDAY del año están en la semana 0. Los valores válidos para WEEKDAY son SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY y SATURDAY.

  • ISOWEEK: muestra el número de semana ISO 8601 de datetime_expression. Los valores ISOWEEK comienzan el lunes. Los valores de muestra están en el rango [1, 53]. El primer ISOWEEK de cada año ISO comienza el lunes anterior al primer jueves del año calendario gregoriano.

  • MONTH

  • QUARTER

  • YEAR

  • ISOYEAR: muestra el año de numeración de la semana ISO 8601, que es el año calendario gregoriano que contiene el jueves de la semana al que pertenece date_expression.

  • DATE

  • DATETIME
  • TIME

Los valores mostrados truncan los períodos de tiempo de orden inferior. Por ejemplo, cuando se extraen segundos, EXTRACT trunca los valores de milisegundos y microsegundos.

Consulta las Definiciones de la zona horaria para obtener información sobre cómo especificar una zona horaria.

Tipo de datos que se muestran

Por lo general, INT64. Muestra DATE si part es DATE.

Ejemplos

En el siguiente ejemplo, EXTRACT muestra un valor que corresponde a la parte de tiempo DAY.

SELECT EXTRACT(DAY
  FROM TIMESTAMP "2008-12-25 15:30:00" AT TIME ZONE "America/Los_Angeles")
  AS the_day;

+------------+
| the_day    |
+------------+
| 25         |
+------------+

En el siguiente ejemplo, EXTRACT muestra los valores que corresponden a diferentes partes de tiempo de una columna de marcas de tiempo.

WITH Timestamps AS (
  SELECT TIMESTAMP '2005-01-03 12:34:56' AS timestamp UNION ALL
  SELECT TIMESTAMP '2007-12-31' UNION ALL
  SELECT TIMESTAMP '2009-01-01' UNION ALL
  SELECT TIMESTAMP '2009-12-31' UNION ALL
  SELECT TIMESTAMP '2017-01-02' UNION ALL
  SELECT TIMESTAMP '2017-05-26'
)
SELECT
  timestamp,
  EXTRACT(ISOYEAR FROM timestamp) AS isoyear,
  EXTRACT(ISOWEEK FROM timestamp) AS isoweek,
  EXTRACT(YEAR FROM timestamp) AS year,
  EXTRACT(WEEK FROM timestamp) AS week
FROM Timestamps
ORDER BY timestamp;
+------------------------+---------+---------+------+------+
| timestamp              | isoyear | isoweek | year | week |
+------------------------+---------+---------+------+------+
| 2005-01-03 12:34:56+00 | 2005    | 1       | 2005 | 1    |
| 2007-12-31 00:00:00+00 | 2008    | 1       | 2007 | 52   |
| 2009-01-01 00:00:00+00 | 2009    | 1       | 2009 | 0    |
| 2009-12-31 00:00:00+00 | 2009    | 53      | 2009 | 52   |
| 2017-01-02 00:00:00+00 | 2017    | 1       | 2017 | 1    |
| 2017-05-26 00:00:00+00 | 2017    | 21      | 2017 | 21   |
+------------------------+---------+---------+------+------+

En el siguiente ejemplo, timestamp_expression cae en domingo. EXTRACT calcula la primera columna mediante las semanas que comienzan el domingo, y calcula la segunda columna con las semanas que comienzan el lunes.

WITH table AS (SELECT TIMESTAMP('2017-11-05 00:00:00') AS timestamp)
SELECT
  timestamp,
  EXTRACT(WEEK(SUNDAY) FROM timestamp) AS week_sunday,
  EXTRACT(WEEK(MONDAY) FROM timestamp) AS week_monday
FROM table;

+------------------------+-------------+---------------+
| timestamp              | week_sunday | week_monday |
+------------------------+-------------+---------------+
| 2017-11-05 00:00:00+00 | 45          | 44            |
+------------------------+-------------+---------------+

STRING

STRING(timestamp_expression[, timezone])

Descripción

Convierte un valor timestamp_expression en un tipo de datos STRING. Admite un parámetro opcional para especificar una zona horaria. Consulta las Definiciones de la zona horaria para obtener información sobre cómo especificar una zona horaria.

Tipo de datos que se muestran

STRING

Ejemplo

SELECT STRING(TIMESTAMP "2008-12-25 15:30:00", "America/Los_Angeles") as string;

+-------------------------------+
| string                        |
+-------------------------------+
| 2008-12-25 15:30:00-08        |
+-------------------------------+

TIMESTAMP

1. TIMESTAMP(string_expression[, timezone])
2. TIMESTAMP(date_expression[, timezone])
3. TIMESTAMP(datetime_expression[, timezone])

Descripción

  1. Convierte una expresión STRING en un tipo de datos TIMESTAMP.

  2. Convierte un objeto DATE en un tipo de datos TIMESTAMP.

  3. Convierte un objeto DATETIME en un tipo de datos TIMESTAMP.

Esta función admite un parámetro opcional para especificar una zona horaria. Si no se especifica una zona horaria, se utiliza la zona horaria predeterminada, UTC.

Tipo de datos que se muestran

TIMESTAMP

Ejemplo

SELECT
  CAST(TIMESTAMP("2008-12-25 15:30:00", "America/Los_Angeles") AS STRING) AS timestamp_str,
  CAST(TIMESTAMP(DATE "2008-12-25", "America/Los_Angeles") AS STRING) AS timestamp_date,
  CAST(TIMESTAMP(DATETIME "2008-12-25 15:30:00", "America/Los_Angeles") AS STRING) AS timestamp_datetime;

+------------------------+------------------------+------------------------+
| timestamp_str          | timestamp_date         | timestamp_datetime     |
+------------------------+------------------------+------------------------+
| 2008-12-25 23:30:00+00 | 2008-12-25 08:00:00+00 | 2008-12-25 23:30:00+00 |
+------------------------+------------------------+------------------------+

TIMESTAMP_ADD

TIMESTAMP_ADD(timestamp_expression, INTERVAL int64_expression date_part)

Descripción

Agrega las unidades int64_expression de date_part a la marca de tiempo, independientemente de cualquier zona horaria.

TIMESTAMP_ADD admite los siguientes valores para date_part:

  • MICROSECOND
  • MILLISECOND
  • SECOND
  • MINUTE
  • HOUR. Equivalente a 60 MINUTEs.

Tipos de datos de muestra

TIMESTAMP

Ejemplo

SELECT
  TIMESTAMP "2008-12-25 15:30:00 UTC" as original,
  TIMESTAMP_ADD(TIMESTAMP "2008-12-25 15:30:00 UTC", INTERVAL 10 MINUTE) AS later;

+------------------------+------------------------+
| original               | later                  |
+------------------------+------------------------+
| 2008-12-25 15:30:00+00 | 2008-12-25 15:40:00+00 |
+------------------------+------------------------+

TIMESTAMP_SUB

TIMESTAMP_SUB(timestamp_expression, INTERVAL int64_expression date_part)

Descripción

Resta las unidades int64_expression de date_part de la marca de tiempo, independientemente de cualquier zona horaria.

TIMESTAMP_SUB admite los siguientes valores para date_part:

  • MICROSECOND
  • MILLISECOND
  • SECOND
  • MINUTE
  • HOUR. Equivalente a 60 MINUTEs.

Tipo de datos que se muestran

TIMESTAMP

Ejemplo

SELECT
  TIMESTAMP "2008-12-25 15:30:00 UTC" as original,
  TIMESTAMP_SUB(TIMESTAMP "2008-12-25 15:30:00 UTC", INTERVAL 10 MINUTE) AS earlier;

+------------------------+------------------------+
| original               | earlier                |
+------------------------+------------------------+
| 2008-12-25 15:30:00+00 | 2008-12-25 15:20:00+00 |
+------------------------+------------------------+

TIMESTAMP_DIFF

TIMESTAMP_DIFF(timestamp_expression, timestamp_expression, date_part)

Descripción

Muestra el número de intervalos completos date_part especificados entre dos marcas de tiempo. El primer valor timestamp_expression representa la fecha posterior; si el primer valor timestamp_expression es anterior al segundo timestamp_expression, el resultado es negativo. Muestra un error si el cálculo excede el tipo de resultado, como si la diferencia en microsegundos entre las dos marcas de tiempo excediera un valor INT64.

TIMESTAMP_DIFF admite los siguientes valores para date_part:

  • MICROSECOND
  • MILLISECOND
  • SECOND
  • MINUTE
  • HOUR. Equivalente a 60 MINUTEs.

Tipo de datos que se muestran

INT64

Ejemplo

SELECT
  TIMESTAMP "2010-07-07 10:20:00 UTC" as later_timestamp,
  TIMESTAMP "2008-12-25 15:30:00 UTC" as earlier_timestamp,
  TIMESTAMP_DIFF(TIMESTAMP "2010-07-07 10:20:00 UTC",
    TIMESTAMP "2008-12-25 15:30:00 UTC", HOUR) AS hours;

+------------------------+------------------------+-------+
| later_timestamp        | earlier_timestamp      | hours |
+------------------------+------------------------+-------+
| 2010-07-07 10:20:00+00 | 2008-12-25 15:30:00+00 | 13410 |
+------------------------+------------------------+-------+

En el siguiente ejemplo, la primera marca de tiempo se produce antes de la segunda marca de tiempo, lo que se traduce en un resultado negativo.

SELECT TIMESTAMP_DIFF(TIMESTAMP "2018-08-14", TIMESTAMP "2018-10-14", DAY);

+---------------+
| negative_diff |
+---------------+
| -61           |
+---------------+

TIMESTAMP_TRUNC

TIMESTAMP_TRUNC(timestamp_expression, date_part[, time_zone])

Descripción

Trunca una marca de tiempo al nivel de detalle de date_part.

TIMESTAMP_TRUNC admite los siguientes valores para date_part:

  • MICROSECOND
  • MILLISECOND
  • SECOND
  • MINUTE
  • HOUR
  • DAY
  • WEEK
  • WEEK(<WEEKDAY>): trunca timestamp_expression al límite de la semana anterior, en donde las semanas comienzan en WEEKDAY. Los valores válidos para WEEKDAY son SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY y SATURDAY.
  • ISOWEEK: trunca timestamp_expression al límite de la semana ISO 8601 anterior. Los valores ISOWEEK comienzan el lunes. El primer ISOWEEK de cada año ISO contiene el primer jueves del año calendario gregoriano correspondiente. Cualquier valor date_expression anterior a esa especificación se truncará al lunes anterior.
  • MONTH
  • QUARTER
  • YEAR
  • ISOYEAR: trunca timestamp_expression al límite del año de numeración de la semana de ISO 8601 anterior. El límite del año ISO es el lunes de la primera semana cuyo jueves pertenece al año calendario gregoriano correspondiente.

La función TIMESTAMP_TRUNC admite un parámetro time_zone opcional. Este parámetro se aplica a los siguientes valores date_parts:

  • MINUTE
  • HOUR
  • DAY
  • WEEK
  • WEEK(<WEEKDAY>)
  • MONTH
  • QUARTER
  • YEAR

Utiliza este parámetro si deseas usar una zona horaria distinta de la zona horaria predeterminada, UTC, como parte de la operación para truncar.

Cuando se trunca un valor TIMESTAMP a MINUTE o HOUR, TIMESTAMP_TRUNC determina la hora civil de TIMESTAMP en la zona horaria especificada (o predeterminada) y resta los minutos y los segundos (cuando se trunca a HOUR) o los segundos (cuando se trunca a MINUTE) de TIMESTAMP. Si bien esto proporciona resultados intuitivos en la mayoría de los casos, el resultado es una transición no intuitiva cerca del horario de verano que no está alineada con la hora.

Tipo de datos que se muestran

TIMESTAMP

Ejemplos

SELECT
  TIMESTAMP_TRUNC(TIMESTAMP '2008-12-25 15:30:00', DAY, 'UTC') as utc,
  TIMESTAMP_TRUNC(TIMESTAMP '2008-12-25 15:30:00', DAY, 'America/Los_Angeles') as la;

+------------------------+------------------------+
| utc                    | la                     |
+------------------------+------------------------+
| 2008-12-25 00:00:00+00 | 2008-12-25 08:00:00+00 |
+------------------------+------------------------+

En el siguiente ejemplo, timestamp_expression tiene un desplazamiento de zona horaria de +12. La primera columna muestra el valor timestamp_expression en la hora UTC. La segunda columna muestra el resultado de TIMESTAMP_TRUNC con las semanas que comienzan el lunes. Debido a que timestamp_expression cae un domingo en UTC, TIMESTAMP_TRUNC trunca ese valor al lunes anterior. La tercera columna muestra la misma función con el argumento Definición de zona horaria opcional 'Pacific/Auckland'. Aquí, la función trunca el valor timestamp_expression con el uso de la hora de verano de Nueva Zelanda, en donde cae lunes.

SELECT
  timestamp,
  TIMESTAMP_TRUNC(timestamp, WEEK(MONDAY)) AS utc_truncated,
  TIMESTAMP_TRUNC(timestamp, WEEK(MONDAY), 'Pacific/Auckland') AS nzdt_truncated
FROM (SELECT TIMESTAMP('2017-11-06 00:00:00+12') AS timestamp);

+------------------------+------------------------+------------------------+
| timestamp              | utc_truncated          | nzdt_truncated         |
+------------------------+------------------------+------------------------+
| 2017-11-05 12:00:00+00 | 2017-10-30 07:00:00+00 | 2017-11-05 11:00:00+00 |
+------------------------+------------------------+------------------------+

En el siguiente ejemplo, el valor timestamp_expression original está en el año calendario gregoriano 2015. Sin embargo, TIMESTAMP_TRUNC con la parte de la fecha ISOYEAR trunca el valor timestamp_expression al comienzo del año ISO, no al año calendario gregoriano. El primer jueves del año calendario 2015 fue 2015-01-01, por lo que el año ISO 2015 comienza el lunes anterior, 2014-12-29. Por lo tanto, el límite del año ISO que precede al valor 2015-06-15 00:00:00+00 de timestamp_expression es 2014-12-29.

SELECT
  TIMESTAMP_TRUNC('2015-06-15 00:00:00+00', ISOYEAR) AS isoyear_boundary,
  EXTRACT(ISOYEAR FROM TIMESTAMP '2015-06-15 00:00:00+00') AS isoyear_number;

+------------------------+----------------+
| isoyear_boundary       | isoyear_number |
+------------------------+----------------+
| 2014-12-29 00:00:00+00 | 2015           |
+------------------------+----------------+

FORMAT_TIMESTAMP

FORMAT_TIMESTAMP(format_string, timestamp[, time_zone])

Descripción

Establece el formato una marca de tiempo de acuerdo con el valor format_string especificado.

Consulta Elementos de formato admitidos para TIMESTAMP a fin de obtener una lista de los elementos de formato que admite esta función.

Tipo de datos que se muestran

STRING

Ejemplo

SELECT FORMAT_TIMESTAMP("%c", TIMESTAMP "2008-12-25 15:30:00", "America/Los_Angeles")
  AS formatted;

+--------------------------+
| formatted                |
+--------------------------+
| Thu Dec 25 07:30:00 2008 |
+--------------------------+

PARSE_TIMESTAMP

PARSE_TIMESTAMP(format_string, string[, time_zone])

Descripción

Utiliza un valor format_string y una representación de string de una marca de tiempo para mostrar un objeto TIMESTAMP.

Cuando utilice PARSE_TIMESTAMP, tenga en cuenta la siguiente información:

  • Campos sin especificar. Todo campo sin especificar se inicializa desde 1970-01-01 00:00:00.0. Este valor de inicialización usa la zona horaria que especifica el argumento de la zona horaria de la función, si está presente. De lo contrario, el valor de inicialización usa la zona horaria predeterminada, UTC. Por ejemplo, si no se especifica el año, el valor predeterminado es 1970, y así sucesivamente.
  • Nombres que no realizan una distinción entre mayúsculas y minúsculas. Los nombres, como Monday, February, etc., no realizan una distinción entre mayúsculas y minúsculas.
  • Espacio en blanco. Uno o más espacios en blanco consecutivos en la string de formato no coinciden con ningún espacio en blanco consecutivo o coinciden con más espacios en blanco consecutivos en la string de marca de tiempo. Además, los espacios en blanco iniciales y finales en la string de marca de tiempo siempre están permitidos, incluso si no están en la string de formato.
  • Precedencia del formato. Cuando dos (o más) elementos de formato tienen información superpuesta (por ejemplo, tanto %F como %Y afectan al año), el último generalmente reemplaza a los anteriores, con algunas excepciones (consulta las descripciones de %s, %C y %y).

Consulta Elementos de formato admitidos para TIMESTAMP a fin de obtener una lista de los elementos de formato que admite esta función.

Tipo de datos que se muestran

TIMESTAMP

Ejemplo

SELECT PARSE_TIMESTAMP("%c", "Thu Dec 25 07:30:00 2008", "America/Los_Angeles") as parsed;

+-------------------------+
| parsed                  |
+-------------------------+
| 2008-12-25 15:30:00 UTC |
+-------------------------+

TIMESTAMP_SECONDS

TIMESTAMP_SECONDS(int64_expression)

Descripción

Interpreta int64_expression como el número de segundos desde 1970-01-01 00:00:00 UTC.

Tipo de datos que se muestran

TIMESTAMP

Ejemplo

SELECT TIMESTAMP_SECONDS(1230219000) as timestamp;

+-------------------------+
| timestamp               |
+-------------------------+
| 2008-12-25 15:30:00 UTC |
+-------------------------+

TIMESTAMP_MILLIS

TIMESTAMP_MILLIS(int64_expression)

Descripción

Interpreta int64_expression como el número de milisegundos desde 1970-01-01 00:00:00 UTC.

Tipo de datos que se muestran

TIMESTAMP

Ejemplo

SELECT TIMESTAMP_MILLIS(1230219000000) as timestamp;

+-------------------------+
| timestamp               |
+-------------------------+
| 2008-12-25 15:30:00 UTC |
+-------------------------+

TIMESTAMP_MICROS

TIMESTAMP_MICROS(int64_expression)

Descripción

Interpreta int64_expression como el número de microsegundos desde 1970-01-01 00:00:00 UTC.

Tipo de datos que se muestran

TIMESTAMP

Ejemplo

SELECT TIMESTAMP_MICROS(1230219000000000) as timestamp;

+-------------------------+
| timestamp               |
+-------------------------+
| 2008-12-25 15:30:00 UTC |
+-------------------------+

UNIX_SECONDS

UNIX_SECONDS(timestamp_expression)

Descripción

Muestra el número de segundos desde 1970-01-01 00:00:00 UTC. Trunca los niveles más altos de precisión.

Tipo de datos que se muestran

INT64

Ejemplo

SELECT UNIX_SECONDS(TIMESTAMP "2008-12-25 15:30:00") as seconds;

+------------+
| seconds    |
+------------+
| 1230219000 |
+------------+

UNIX_MILLIS

UNIX_MILLIS(timestamp_expression)

Descripción

Muestra el número de milisegundos desde 1970-01-01 00:00:00 UTC. Trunca los niveles más altos de precisión.

Tipo de datos que se muestran

INT64

Ejemplo

SELECT UNIX_MILLIS(TIMESTAMP "2008-12-25 15:30:00 UTC") as millis;

+---------------+
| millis        |
+---------------+
| 1230219000000 |
+---------------+

UNIX_MICROS

UNIX_MICROS(timestamp_expression)

Descripción

Muestra el número de microsegundos desde 1970-01-01 00:00:00 UTC. Trunca los niveles más altos de precisión.

Tipo de datos que se muestran

INT64

Ejemplo

SELECT UNIX_MICROS(TIMESTAMP "2008-12-25 15:30:00") as micros;

+------------------+
| micros           |
+------------------+
| 1230219000000000 |
+------------------+

Elementos de formato admitidos para TIMESTAMP

A menos que se indique lo contrario, las funciones de TIMESTAMP que usan strings de formato admiten los siguientes elementos:

Elemento de formato Descripción
%A El nombre completo del día de la semana.
%a El nombre abreviado del día de la semana.
%B El nombre completo del mes.
%b o %h El nombre del mes abreviado.
%C El siglo (un año dividido por 100 y truncado a un número entero) como un número decimal (00-99).
%c La representación de la fecha y la hora.
%D La fecha en el formato %m/%d/%y.
%d El día del mes como número decimal (01-31).
%e El día del mes como número decimal (1-31); los dígitos individuales están precedidos por un espacio.
%F La fecha en el formato %Y-%m-%d.
%G El año ISO 8601 con siglo como número decimal. Cada año ISO comienza el lunes anterior al primer jueves del año calendario gregoriano. Ten en cuenta que %G y %Y pueden producir resultados diferentes cerca de los límites del año gregoriano, en donde el año gregoriano y el año ISO pueden divergir.
%g El año ISO 8601 sin siglo como número decimal (00-99). Cada año ISO comienza el lunes anterior al primer jueves del año calendario gregoriano. Ten en cuenta que %g y %y pueden producir resultados diferentes cerca de los límites del año gregoriano, en donde el año gregoriano y el año ISO pueden divergir.
%H La hora (formato de 24 horas) como número decimal (00-23).
%I La hora (formato de 12 horas) como número decimal (01-12).
%j El día del año como número decimal (001-366).
%k La hora (formato de 24 horas) como número decimal (0-23); los dígitos individuales están precedidos por un espacio.
%l La hora (formato de 12 horas) como número decimal (1-12); los dígitos individuales están precedidos por un espacio.
%M El minuto como número decimal (00-59).
%m El mes como número decimal (01-12).
%n Un carácter de salto de línea.
%P Ya sea a.m. o p.m.
%p Ya sea A.M. o P.M.
%R La hora en el formato %H:%M.
%r La hora en el formato de 12 horas con la notación A.M./P.M.
%S El segundo como número decimal (00-60).
%s El número de segundos desde 1970-01-01 00:00:00 UTC. Siempre anula todos los demás elementos de formato, independientemente de dónde aparezca %s en la string. Si aparecen varios elementos %s, el último tiene prioridad.
%T La hora en el formato %H:%M:%S.
%t Un tabulador.
%U El número de la semana del año (domingo como primer día de la semana) como número decimal (00-53).
%u El día de la semana (lunes como primer día de la semana) como número decimal (1-7).
%V El número de la semana del año (lunes como primer día de la semana) como número decimal (01-53). Si la semana que contiene el 1 de enero tiene cuatro o más días en el año nuevo, entonces es la semana 1; de lo contrario, es la semana 53 del año anterior, y la próxima semana es la semana 1.
%W El número de la semana del año (lunes como primer día de la semana) como número decimal (00-53).
%w El día de la semana (domingo como primer día de la semana) como número decimal (0-6).
%X La representación de la hora en formato HH:MM:SS.
%x La representación de la fecha en formato MM/DD/YY.
%Y El año con siglo como número decimal.
%y El año sin siglo como número decimal (00-99), con un cero inicial opcional. Se puede mezclar con %C. Si no se especifica %C, los años 00-68 son años 2000, mientras que los años 69-99 son 1900.
%Z El nombre de la zona horaria.
%z La compensación desde el primer meridiano en el formato +HHMM o -HHMM según corresponda, con valores positivos que representan ubicaciones al este de Greenwich.
%% Un solo carácter %.
%Ez Zona horaria numérica compatible con RFC 3339 (+HH:MM o -HH:MM).
%E#S Segundos con # dígitos de precisión fraccional.
%E*S Segundos con precisión fraccional completa (un literal '*').
%E4Y Años de cuatro caracteres (0001… 9999). Ten en cuenta que %Y produce tantos caracteres como sea necesario para procesar completamente el año.

Definiciones de la zona horaria

Ciertas funciones de fecha y marca de tiempo te permiten anular la zona horaria predeterminada y especificar una diferente. Puedes especificar una zona horaria; para ello, debes suministrar su compensación UTC con el siguiente formato:

(+|-)H[H][:M[M]]

Por ejemplo:

-08:00
¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Si necesitas ayuda, visita nuestra página de asistencia.