SELECT
Trunc(Trunc(SYSDATE,'MONTH')-1,'MONTH') First_Day_Last_Month, Trunc(SYSDATE,'MONTH')-1/86400 Last_Day_Last_Month,
Trunc(SYSDATE,'MONTH') First_Day_Cur_Month, LAST_DAY(Trunc(SYSDATE,'MONTH'))+1-1/86400 Last_Day_Cur_Month
FROM dual ;
SELECT
Trunc(Trunc(SYSDATE,'MONTH')-1,'MONTH') First_Day_Last_Month, Trunc(SYSDATE,'MONTH')-1/86400 Last_Day_Last_Month,
Trunc(SYSDATE,'MONTH') First_Day_Cur_Month, LAST_DAY(Trunc(SYSDATE,'MONTH'))+1-1/86400 Last_Day_Cur_Month
FROM dual ;