select trunc(sysdate, 'mm'),
last_day(trunc(sysdate)),
trunc(add_months(trunc(sysdate), -1), 'mm'),
last_day(add_months(trunc(sysdate), -1)),
trunc(add_months(trunc(sysdate), -2), 'mm'),
last_day(add_months(trunc(sysdate), -2))
from dual