Questo ti mostrerà l'ultimo giorno del mese
SELECT Max(LAST_DAY(ADD_MONTHS(SYSDATE, -2)) + level)
FROM dual
CONNECT BY
level <= LAST_DAY(ADD_MONTHS(SYSDATE, -1)) - LAST_DAY(ADD_MONTHS(SYSDATE, -2))
è possibile sostituire la data del sistema che cosa mai data che si desidera con to_date ('04/04/1924' , 'MM-DD-YYYY')
SELECT Max(LAST_DAY(ADD_MONTHS(to_date('04/04/1924','MM-DD-YYYY'), -2)) + level)
FROM dual
CONNECT BY
level <= LAST_DAY(ADD_MONTHS(to_date('04/04/1924','MM-DD-YYYY'), -1)) - LAST_DAY(ADD_MONTHS(to_date('04/04/1924','MM-DD-YYYY'), -2))
o semplicemente
select LAST_DAY(ADD_MONTHS(to_date('04/04/1924','MM-DD-YYYY'), -2)) from dual;
04/04/1924 -> qui 04 rappresenta aprile non febbraio vuoi 2 mesi fa l'ultimo giorno – Civa