tiankeyi 2022-05-20 10:09 采纳率: 78.6%
浏览 104
已结题

oracle求上一季度的数据

有一张表,本季度的数据不完整,想通过本月求上个季度的数据怎么求

img

  • 写回答

4条回答 默认 最新

  • DarkAthena ORACLE应用及数据库设计方案咨询师 2022-05-21 00:21
    关注
    select zzz.*
      from zzz
     where decode(to_char(sysdate, 'q'), '1', '4', '2', '1', '3', '2', '4', '3') =
           to_char(to_date(yf, 'yyyymm'), 'q')
       and decode(to_char(sysdate, 'q'),
                  '1',
                  to_char(sysdate, 'yyyy') - 1,
                  substr(yf, 1, 4)) = substr(yf, 1, 4)
    

    img


    加个开窗函数字段就好了

    select zzz.*,avg(fs) over() avg_fs
      from zzz
     where decode(to_char(sysdate, 'q'), '1', '4', '2', '1', '3', '2', '4', '3') =
           to_char(to_date(yf, 'yyyymm'), 'q')
       and decode(to_char(sysdate, 'q'),
                  '1',
                  to_char(sysdate, 'yyyy') - 1,
                  substr(yf, 1, 4)) = substr(yf, 1, 4)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 5月31日
  • 已采纳回答 5月23日
  • 创建了问题 5月20日