转自:https://www.cnblogs.com/leqhome/p/5319984.html
--年初,年末
select trunc(sysdate,'yyyy') from dual;
select add_months(trunc(sysdate,'yyyy'),12) - 1 from dual;
--月初,月末
select trunc(sysdate,'month') from dual;
select add_months(trunc(sysdate,'month'),1) -1 from dual;
--季度初,季度末
select trunc(sysdate,'q') from dual;
select add_months(trunc(sysdate,'q'),3)-1 from dual;