Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

2 maneiras de obter o número de dias em um mês no Oracle


Aqui estão algumas maneiras de retornar o número de dias em um determinado mês no Oracle Database. Pode ser o número de dias no mês atual ou o número de dias em um mês com base em uma data especificada.

Opção 1


Aqui está nossa primeira opção:
SELECT CAST(TO_CHAR(LAST_DAY(date '2030-01-17'), 'DD') AS INT)
FROM DUAL;

Resultado:
31

O LAST_DAY() A função retorna o último dia do mês com base na data especificada. Passando isso para TO_CHAR() com um formato de DD para o dia do mês, obtemos o número do último dia do mês. Esse número representa o número de dias do mês.

Em seguida, usamos o CAST() função para converter o resultado para um inteiro.

Opção 2


Aqui está outra opção:
SELECT 
    TRUNC(LAST_DAY(date '2030-08-20'))-TRUNC(date '2030-08-20', 'MM')
FROM DUAL;

Resultado:
30

O TRUNC(date) A função retorna o valor de data fornecido com a parte de hora do dia truncada para a unidade fornecida no modelo de formato especificado.