3,491
社区成员
发帖
与我相关
我的任务
分享
--先生成一张你当前年份的每个月的开始日期和结束日期的临时表,如:
SELECT To_Char(Add_Months(Trunc(SYSDATE,'yyyy'),LEVEL-1),'yyyy-mm-dd') starttime,
To_Char(Last_Day(Add_Months(Trunc(SYSDATE,'yyyy'),LEVEL-1)),'yyyy-mm-dd') endtime
FROM dual
CONNECT BY LEVEL<=12;
--然后用这个临时表跟你原表进行外连接,依据月份进行分组,再用decode转换一下,转换12次而已,因为有12个月。
--只是简单的行列转化而已