1、表示上个月的月份
select to_char(add_months(trunc(sysdate, 'MM'), -1),'yyyy') from dual
select to_char(add_months(trunc(sysdate, 'MM'), -1),'MM') from dual
这两句语言 顺利的解决了 根据2018.1.1 得到 2017.12.1号日期的方法
2、表示上个月月初到月末 (包含时分秒)
select to_char(add_months(trunc(sysdate, 'MM'), -1),'yyyy-MM-dd hh24:mi:ss') from dual
select to_char(trunc(sysdate, 'MM'),'yyyy-MM-dd hh24:mi:ss') from dual