Categorias:

Funções de data e hora

LAST_DAY

Retorna o último dia da parte de data especificada para uma data ou carimbo de data/hora. Comumente usado para retornar no último dia do mês para uma data ou carimbo de data/hora.

Sintaxe

LAST_DAY( <date_or_time_expr> [ , <date_part> ] )
Copy

Notas de uso

  • date_or_time_expr (obrigatório) deve ser uma expressão de data ou carimbo de data/hora.

  • date_part (Opcional) é a parte da data para a qual o último dia é retornado. Os valores possíveis são year, quarter, month ou week (ou qualquer uma de suas variações suportadas). Para obter mais detalhes, consulte Partes de data e hora com suporte.

    O padrão é month.

  • Quando date_part é week (ou qualquer uma de suas variações), a saída é controlada pelo parâmetro de sessão WEEK_START. Para obter mais detalhes, incluindo exemplos, consulte Semanas de calendário e dias úteis.

  • O valor de retorno é sempre uma data, mesmo que date_or_time_expr seja um carimbo de data/hora.

Exemplos

Retornar o último dia do mês para a data especificada (a partir de um carimbo de data/hora):

SELECT TO_DATE('2015-05-08T23:39:20.123-07:00') AS "DATE",
       LAST_DAY("DATE") AS "LAST DAY OF MONTH";
+------------+-------------------+
| DATE       | LAST DAY OF MONTH |
|------------+-------------------|
| 2015-05-08 | 2015-05-31        |
+------------+-------------------+
Copy

Retornar o último dia do ano para a data especificada (a partir de um carimbo de data/hora):

SELECT TO_DATE('2015-05-08T23:39:20.123-07:00') AS "DATE",
       LAST_DAY("DATE", 'year') AS "LAST DAY OF YEAR";
+------------+------------------+
| DATE       | LAST DAY OF YEAR |
|------------+------------------|
| 2015-05-08 | 2015-12-31       |
+------------+------------------+
Copy