DATETIME_TRUNC

Trunca una fecha según la granularidad especificada.

Ejemplo de uso

DATETIME_TRUNC(Order Date, MONTH)

Sintaxis

DATETIME_TRUNC( date_expression, part )

Parámetros

date_expression: campo o expresión de fecha o de fecha y hora.

part: la parte temporal que se debe devolver. DATETIME_TRUNC admite las siguientes unidades de tiempo:

  • MICROSECOND: puede utilizarse en campos o expresiones de fecha y hora.
  • MILLISECOND: puede utilizarse en campos o expresiones de fecha y hora.
  • SECOND: puede utilizarse en campos o expresiones de fecha y hora.
  • MINUTE: puede utilizarse en campos o expresiones de fecha y hora.
  • HOUR: puede utilizarse en campos o expresiones de fecha y hora.
  • DAY
  • WEEK: esta parte de la fecha empieza en domingo.
  • ISOWEEK: usa el estándar de numeración semanal ISO 8601. Las semanas ISO comienzan en lunes.
  • MONTH
  • QUARTER
  • YEAR
  • ISOYEAR: usa el estándar de numeración anual ISO 8601 por fecha semanal. Según este estándar, el año empieza el lunes de la primera semana que contiene el primer jueves del mismo año según el calendario gregoriano.

Tipo de datos devueltos

Fecha y hora

Ejemplos

Fórmula de ejemplo Salida
DATETIME_TRUNC(DATE '2008-12-25', MONTH) 2008-12-01 00:00:00
DATETIME_TRUNC(DATETIME "2008-12-25 15:30:00", DAY) 2008-12-25 00:00:00

En el siguiente ejemplo, el valor date_expression original corresponde al año 2015 del calendario gregoriano. Sin embargo, DATE_TRUNC, con la parte de fecha ISOYEAR, trunca el valor date_expression para que coincida con el comienzo del año ISO, no con el del año del calendario gregoriano. El primer jueves del año natural del año 2015 fue 2015-01-01, por lo que el año ISO 2015 empieza el lunes anterior, 2014-12-29. Por lo tanto, el año ISO anterior al valor date_expression 2015-06-15 es 2014-12-29.

Fórmula de ejemplo Salida
DATE_TRUNC('2015-06-15', ISOYEAR) 2014-12-29
EXTRACT(ISOYEAR FROM DATETIME '2015-06-15') 2015

Notas

Esta función no está disponible para los tipos de fecha del modo de compatibilidad.