oracle数据库子查询的结果需要使用多次解决办法


with c as  (select a.trandt,sum(a.tranam) tranam from tran a group by a.trandt )--将子查询抽取出来,以后可以直接用。该方法只适用于oracle,mysql不支持
select c.trandt, sum(d.tranam)
  from  c
 inner join c d
    on c.trandt >= d.trandt
 group by c.trandt 


select c.trandt, sum(d.tranam)
  from (select a.trandt, sum(a.tranam) tranam
          from tran a
         group by a.trandt
         order by a.trandt) c
 inner join (select a.trandt, sum(a.tranam) tranam
               from tran a
              group by a.trandt
              order by a.trandt) d
    on c.trandt >= d.trandt
 group by c.trandt 

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM