码迷,mamicode.com
首页 > 数据库 > 详细

SQL

时间:2016-09-08 16:38:30      阅读:274      评论:0      收藏:0      [点我收藏+]

标签:sql


select u.fonds_code,

       u.year_code,

       u.yj,

       u.cq,

       u.dq,

       nvl(u.yj, 0) + nvl(u.cq, 0) + nvl(u.dq, 0) as wsfilezj,

       

       (

       select  sum(t.yj)   as tes from (

select u.fonds_code,

       u.year_code,

       u.yj,

       u.cq,

       u.dq,

       nvl(u.yj, 0) + nvl(u.cq, 0) + nvl(u.dq, 0) as wsfilezj,

       sum(nvl(u.yj, 0)) as wswjyjhj,

       sum(nvl(u.cq, 0)) as wswjcqhj,

       sum(nvl(u.dq, 0)) as wswjdqhj

  from (select t. fonds_code,

               t.year_code,

               nvl(y.yjwjsl, 0) as yj,

               nvl(c.cqwjsl, 0) as cq,

               nvl(d.dqwjsl, 0) as dq

          from T_FILE_WSDA t

          left join (select yj.fonds_code, yj.year_code, count(1) as yjwjsl

                      from T_FILE_WSDA yj

                     where yj.retention_period = ‘1‘

                       and (is_delete = ‘0‘ or is_delete is null)

                       and yj.year_code is not null

                     group by yj.fonds_code, yj.year_code) y on y.fonds_code =

                                                                t.fonds_code

                                                            and y.year_code =

                                                                t.year_code

        

          left join (select cq.fonds_code, cq.year_code, count(1) as cqwjsl

                      from T_FILE_WSDA cq

                     where cq.retention_period = ‘2‘

                       and (is_delete = ‘0‘ or is_delete is null)

                     group by cq.fonds_code, cq.year_code) c on c.fonds_code =

                                                                t.fonds_code

                                                            and c.year_code =

                                                                t.year_code

        

          left join (select dq.fonds_code, dq.year_code, count(1) as dqwjsl

                      from T_FILE_WSDA dq

                     where dq.retention_period = ‘3‘

                       and (is_delete = ‘0‘ or is_delete is null)

                       and dq.year_code is not null

                     group by dq.fonds_code, dq.year_code) d on d.fonds_code =

                                                                t.fonds_code

                                                            and d.year_code =

                                                                t.year_code

        

         where (is_delete = ‘0‘ or is_delete is null)

           and t.year_code is not null

           and t.fonds_code = ‘0409‘

         group by t.fonds_code, t.year_code, y.yjwjsl, c.cqwjsl, d.dqwjsl

         order by t.year_code) u

 where 1 = 1

 group by u.fonds_code, u.year_code, u.yj, u.cq, u.dq

 order by u.year_code

) t

       )

        as wswjyjhj,

       

       (

       select  sum(t.cq)   as tes from (

select u.fonds_code,

       u.year_code,

       u.yj,

       u.cq,

       u.dq,

       nvl(u.yj, 0) + nvl(u.cq, 0) + nvl(u.dq, 0) as wsfilezj,

       sum(nvl(u.yj, 0)) as wswjyjhj,

       sum(nvl(u.cq, 0)) as wswjcqhj,

       sum(nvl(u.dq, 0)) as wswjdqhj

  from (select t. fonds_code,

               t.year_code,

               nvl(y.yjwjsl, 0) as yj,

               nvl(c.cqwjsl, 0) as cq,

               nvl(d.dqwjsl, 0) as dq

          from T_FILE_WSDA t

          left join (select yj.fonds_code, yj.year_code, count(1) as yjwjsl

                      from T_FILE_WSDA yj

                     where yj.retention_period = ‘1‘

                       and (is_delete = ‘0‘ or is_delete is null)

                       and yj.year_code is not null

                     group by yj.fonds_code, yj.year_code) y on y.fonds_code =

                                                                t.fonds_code

                                                            and y.year_code =

                                                                t.year_code

        

          left join (select cq.fonds_code, cq.year_code, count(1) as cqwjsl

                      from T_FILE_WSDA cq

                     where cq.retention_period = ‘2‘

                       and (is_delete = ‘0‘ or is_delete is null)

                     group by cq.fonds_code, cq.year_code) c on c.fonds_code =

                                                                t.fonds_code

                                                            and c.year_code =

                                                                t.year_code

        

          left join (select dq.fonds_code, dq.year_code, count(1) as dqwjsl

                      from T_FILE_WSDA dq

                     where dq.retention_period = ‘3‘

                       and (is_delete = ‘0‘ or is_delete is null)

                       and dq.year_code is not null

                     group by dq.fonds_code, dq.year_code) d on d.fonds_code =

                                                                t.fonds_code

                                                            and d.year_code =

                                                                t.year_code

        

         where (is_delete = ‘0‘ or is_delete is null)

           and t.year_code is not null

           and t.fonds_code = ‘0409‘

         group by t.fonds_code, t.year_code, y.yjwjsl, c.cqwjsl, d.dqwjsl

         order by t.year_code) u

 where 1 = 1

 group by u.fonds_code, u.year_code, u.yj, u.cq, u.dq

 order by u.year_code

) t

       )

       

        as wswjcqhj,

      

       

        (

       select  sum(t.dq)   as tes from (

select u.fonds_code,

       u.year_code,

       u.yj,

       u.cq,

       u.dq,

       nvl(u.yj, 0) + nvl(u.cq, 0) + nvl(u.dq, 0) as wsfilezj,

       sum(nvl(u.yj, 0)) as wswjyjhj,

       sum(nvl(u.cq, 0)) as wswjcqhj,

       sum(nvl(u.dq, 0)) as wswjdqhj

  from (select t. fonds_code,

               t.year_code,

               nvl(y.yjwjsl, 0) as yj,

               nvl(c.cqwjsl, 0) as cq,

               nvl(d.dqwjsl, 0) as dq

          from T_FILE_WSDA t

          left join (select yj.fonds_code, yj.year_code, count(1) as yjwjsl

                      from T_FILE_WSDA yj

                     where yj.retention_period = ‘1‘

                       and (is_delete = ‘0‘ or is_delete is null)

                       and yj.year_code is not null

                     group by yj.fonds_code, yj.year_code) y on y.fonds_code =

                                                                t.fonds_code

                                                            and y.year_code =

                                                                t.year_code

        

          left join (select cq.fonds_code, cq.year_code, count(1) as cqwjsl

                      from T_FILE_WSDA cq

                     where cq.retention_period = ‘2‘

                       and (is_delete = ‘0‘ or is_delete is null)

                     group by cq.fonds_code, cq.year_code) c on c.fonds_code =

                                                                t.fonds_code

                                                            and c.year_code =

                                                                t.year_code

        

          left join (select dq.fonds_code, dq.year_code, count(1) as dqwjsl

                      from T_FILE_WSDA dq

                     where dq.retention_period = ‘3‘

                       and (is_delete = ‘0‘ or is_delete is null)

                       and dq.year_code is not null

                     group by dq.fonds_code, dq.year_code) d on d.fonds_code =

                                                                t.fonds_code

                                                            and d.year_code =

                                                                t.year_code

        

         where (is_delete = ‘0‘ or is_delete is null)

           and t.year_code is not null

           and t.fonds_code = ‘0409‘

         group by t.fonds_code, t.year_code, y.yjwjsl, c.cqwjsl, d.dqwjsl

         order by t.year_code) u

 where 1 = 1

 group by u.fonds_code, u.year_code, u.yj, u.cq, u.dq

 order by u.year_code

) t

       )

        as wswjdqhj

  from (select t. fonds_code,

               t.year_code,

               nvl(y.yjwjsl, 0) as yj,

               nvl(c.cqwjsl, 0) as cq,

               nvl(d.dqwjsl, 0) as dq

          from T_FILE_WSDA t

          left join (select yj.fonds_code, yj.year_code, count(1) as yjwjsl

                      from T_FILE_WSDA yj

                     where yj.retention_period = ‘1‘

                       and (is_delete = ‘0‘ or is_delete is null)

                       and yj.year_code is not null

                     group by yj.fonds_code, yj.year_code) y on y.fonds_code =

                                                                t.fonds_code

                                                            and y.year_code =

                                                                t.year_code

        

          left join (select cq.fonds_code, cq.year_code, count(1) as cqwjsl

                      from T_FILE_WSDA cq

                     where cq.retention_period = ‘2‘

                       and (is_delete = ‘0‘ or is_delete is null)

                     group by cq.fonds_code, cq.year_code) c on c.fonds_code =

                                                                t.fonds_code

                                                            and c.year_code =

                                                                t.year_code

        

          left join (select dq.fonds_code, dq.year_code, count(1) as dqwjsl

                      from T_FILE_WSDA dq

                     where dq.retention_period = ‘3‘

                       and (is_delete = ‘0‘ or is_delete is null)

                       and dq.year_code is not null

                     group by dq.fonds_code, dq.year_code) d on d.fonds_code =

                                                                t.fonds_code

                                                            and d.year_code =

                                                                t.year_code

        

         where (is_delete = ‘0‘ or is_delete is null)

           and t.year_code is not null

           and t.fonds_code = ‘0409‘

         group by t.fonds_code, t.year_code, y.yjwjsl, c.cqwjsl, d.dqwjsl

         order by t.year_code) u

 where 1 = 1

 group by u.fonds_code, u.year_code, u.yj, u.cq, u.dq

 order by u.year_code

 

 

 



本文出自 “HTMLDOM” 博客,请务必保留此出处http://sucheng.blog.51cto.com/6511117/1850615

SQL

标签:sql

原文地址:http://sucheng.blog.51cto.com/6511117/1850615

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!