我想将子查询与分组依据一起使用

时间:2019-03-02 12:51:36

标签: sql oracle group-by

首先,我的英语不是很好。对此我感到抱歉。 当我运行此sql代码时,我的数据是double数,我认为它是针对

select * from (

我的冷杉选择

SELECT ct.name as ILAD, FsktkKpst.Ad as nitelik1,Count(ky.name) AS KAdet, SUM(kme.nufus) AS KNufus
                        FROM
                        (select 1 as ID, '0-250 Kisilik' AD from dual
                            union all
                            select 2 as ID, '251-500 Kisilik' AD from dual
                            union all
                            select 3 as ID, '501-1000 Kisilik' AD from dual
                            union all
                            select 4 as ID, '1000-1500 Kisilik' AD from dual
                            union all
                            select 5 as ID, '>1501 Kisilik' AD from dual) FsktkKpst,
                            foseptik_evw f, village ky,city ct,county cy,koymahalleenvanteri kme  
                        WHERE  ky.id = kme.koyid(+) 
                               AND EXISTS (SELECT 1 FROM   foseptik_evw fs 
                                           WHERE  f.koyid = ky.id and f.KOYBAGLISIID is null   AND f.kapasite >=0 and f.AKTF!=-1 and f.AKTF !=0 ) 
                               AND ky.countyid = cy.id 
                               AND cy.cityid = ct.id
                               and ct.id = f.ILID 
                               AND f.ILID ='{6B7-C6EC-40F-8CC25991}' and f.KAPASITE=fsktkKpst.Id group by f.KAPASITE, fsktkKpst.Ad ,ct.name order by f.KAPASITE ),

第二次选择

( SELECT ct.name as ILAD,FsktkKpst.Ad, SUM(kme.nufus) AS KBNufus,Count(kb.name) AS KBAdet 
    FROM 
     (select 1 as ID, '0-250 Kisilik' AD from dual
                        union all
                        select 2 as ID, '251-500 Kisilik' AD from dual
                        union all
                        select 3 as ID, '501-1000 Kisilik' AD from dual
                        union all
                        select 4 as ID, '1000-1500 Kisilik' AD from dual
                        union all
                        select 5 as ID, '>1501 Kisilik' AD from dual) FsktkKpst,

      foseptik_evw f, villagebound kb,village ky,city ct,county cy,koymahalleenvanteri kme 
    WHERE  kb.id = kme.koybaglisiid(+) 
           AND EXISTS (SELECT 1 FROM   asu_foseptik_evw fs 
                       WHERE  f.KOYBAGLISIID = kb.id  AND f.kapasite >= 0 and f.AKTF!=-1 and f.AKTF !=0 ) 
           AND kb.villageid = ky.id               
           AND ky.countyid = cy.id
           AND cy.cityid = ct.id
           and ct.id = f.ILID
           AND ct.id = '{6B7-C6EC-40F-8CC25991}'  and f.KAPASITE=fsktkKpst.Id group by f.KAPASITE , fsktkKpst.Ad, ct.name order by f.KAPASITE )

我的数据正乘以每个查询中的记录数。我的数据运行平稳。当我分别运行查询时

0 个答案:

没有答案