当前位置: 代码迷 >> DB2 >> 求一条SQL语句,谢谢哈
  详细解决方案

求一条SQL语句,谢谢哈

热度:3688   发布时间:2013-02-26 00:00:00.0
求一条SQL语句,多谢哈
有一个表是Notice
格式如下:
HTML code
GRP    PR_GI        refseq1    9625921        NC_0013481    9625992        NC_0013501    9628039        NC_0016501    52139285    NC_0062731    52139329    NC_0062731    13095591    NC_0026652    9625922        NC_0013482    9625993        NC_0013502    9628040        NC_0016502    9628075        NC_0016502    9629392        NC_001806


取 GRP,PR_GI,refseq,
其中,在同一个GRP中,如果存在两个或两个以上PR_GI在同一个refseq中,则提取出来。
上面的示例结果如下:
HTML code
GRP    PR_GI        refseq1    52139285    NC_0062731    52139329    NC_0062732    9628040        NC_0016502    9628075        NC_001650




------解决方案--------------------------------------------------------
SQL code
select *from Notice awhere exists (select 1 from Notice where GRP=a.GRP and refseq=a.refseq and PR_GI<>a.PR_GI)
------解决方案--------------------------------------------------------
select a.* from tt a 
inner join 
(select GRP,refseq from tt group by GRP,refseq having count(*)>=2) b 
on a.refseq=v.refseq and a.GRP=b.GRP
------解决方案--------------------------------------------------------
select GRP,PR_GI,refseq from (
SELECT A.*,
(SELECT COUNT(*) FROM Notice A WHERE A.GRP=B.GRP AND A.refseq=B.refseq) AS num
 FROM Notice B) where c.num>1
  相关解决方案