DATETIME_TRUNC

Trunca uma data de acordo com o nível de detalhe especificado.

Exemplos de utilização

DATETIME_TRUNC(Order Date, MONTH)

Sintaxe

DATETIME_TRUNC( date_expression, part )

Parâmetros

date_expression: um campo ou uma expressão de data ou de data e hora.

part: a parte de tempo a devolver. O DATETIME_TRUNC suporta as seguintes partes de tempo:

  • MICROSECOND: disponível para campos ou expressões de data e hora.
  • MILLISECOND: disponível para campos ou expressões de data e hora.
  • SECOND: disponível para campos ou expressões de data e hora.
  • MINUTE: disponível para campos ou expressões de data e hora.
  • HOUR: disponível para campos ou expressões de data e hora.
  • DAY
  • WEEK: esta parte da data começa ao domingo.
  • ISOWEEK: usa os limites da semana ISO 8601. As semanas ISO começam à segunda-feira.
  • MONTH
  • QUARTER
  • YEAR
  • ISOYEAR: usa o limite do ano de numeração de semanas da norma ISO 8601. O limite do ano ISO é a segunda-feira da primeira semana cuja quinta-feira pertence ao ano civil gregoriano correspondente.

Tipo de dados devolvidos

Data e hora

Exemplos

Fórmula de exemplo Resultado
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

No exemplo seguinte, a expressão date_expression original está no ano de 2015 do calendário gregoriano. No entanto, DATE_TRUNC com a parte de data ISOYEAR trunca a date_expression para o início do ano ISO, e não para o ano do calendário gregoriano. A primeira quinta-feira do ano civil de 2015 foi a 01-01-2015, pelo que o ano ISO de 2015 começa na segunda-feira anterior, a 29-12-2014. Por conseguinte, o limite do ano ISO anterior à date_expression 2015-06-15 é 2014-12-29.

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

Notas

Esta função não está disponível para tipos de datas do modo de compatibilidade.