分组中查询不符合条件的组
生活随笔
收集整理的這篇文章主要介紹了
分组中查询不符合条件的组
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
問題提出:oracle愛好者qq群里的snowg
select CORP_TYPE_NAME,CRRP_NAME,GROWTH_CODE,GROWTH_NAME,GROWTH_DATE,STATION_NAME
from SERVICE.WEB_CNAN_ABAM
?where growth_date>'20100101' and growth_date<'20120101' and STATION_NAME='墊江'
?ORDER BY 2,3
?這是要求分組的表,其中STATION_NAME站點會有很多(上千),后面的CORP_TYPE_CODE物種大類和下面的表的TYPE_CODE關(guān)聯(lián)
?
?問題需求是統(tǒng)計中各個站點(上千)下不同物種(15類)發(fā)育不完整的記錄組,比如這里的TYPE_CODE=1的稻類有9個過程。
?2012-11-12 21:00:58 更新:snowg終于qq在線,測試ok
SELECT AA.STATION_NAME,AA.CORP_TYPE_CODE,AA.CORP_TYPE_NAME,AA.C1,BB.C2FROM(select STATION_NAME,CORP_TYPE_CODE,CORP_TYPE_NAME,COUNT(*) C1 from SERVICE.WEB_CNAN_ABAMwhere growth_date>'20100101' and growth_date<'20120101' GROUP BY STATION_NAME,CORP_TYPE_CODE,CORP_TYPE_NAME) AA,(SELECT TYPE_CODE,TYPE_NAME,COUNT(*) C2 FROM BASE.OBSERVE_ABAM_DICT_GROWTH GROUP BY TYPE_CODE,TYPE_NAME) BBWHERE AA.CORP_TYPE_CODE=BB.TYPE_CODE AND AA.C1<BB.C2 ORDER BY AA.STATION_NAME,AA.CORP_TYPE_CODE?
?下面是我寫的sql,問題應(yīng)該解決,我把需要分析的組作為一個表aa,然后基準(zhǔn)表作為bb,使用兩者之間的關(guān)系
aa.s2=bb.s1 來確保對比的是每一個地區(qū)下每一個種類下的每一個物種 select aa.glorgbookcode,aa.glorgbookname,aa.s2,aa.c2from (select glorgbookcode,glorgbookname , substr(subjcode,1,4) s2,count(*) c2from bd_accsubj,bd_glorgbook where bd_accsubj.pk_glorgbook=bd_glorgbook.pk_glorgbook and( subjcode like '5502%' or subjcode like '4104%' )and glorgbookcode not like '%0003'group by glorgbookcode,glorgbookname,substr(subjcode,1,4)order by glorgbookcode)aa,(select substr(subjcode,1,4) s1, count(*)c1 from bd_accsubj,bd_glorgbook wherebd_accsubj.pk_glorgbook=bd_glorgbook.pk_glorgbook andglorgbookcode='01-0001'and( subjcode like '5502%' or subjcode like '4104%' )group by glorgbookcode,glorgbookname,substr(subjcode,1,4) ) bbwhere aa.s2=bb.s1 and aa.c2<bb.c1有圖有真相
轉(zhuǎn)載于:https://www.cnblogs.com/sumsen/archive/2012/11/08/2761423.html
總結(jié)
以上是生活随笔為你收集整理的分组中查询不符合条件的组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 6.1 图的深度优先和广度优先搜索
- 下一篇: 自己实现的atof()和atoi()代码