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.