[SQL]一个删选数据的例子,使用GROUP、DISTINCT
今天遇到的问题,纠结了一上午,终于解决了。在此记录下来,自我认为还有很多类似的问题都可以套用这段代码。
需求描述:
一个表MyImage,列有:号码ID,路径PATH
如:
ID PATH
1 C:/
1 D:/
2 C:/
2 C:/
3 A:/
3 C:/
4 D:/
写个SQL语句,返回这样的记录的ID号:相同ID存在不同PATH。如上例子,正确的结果应是:
ID
1
3
(ID2没有不同PATH,ID4只有一条记录不存在不同PATH)
这是我的SQL语句:
select ID from [MyImage] as A group by ID having ( select COUNT(distinct(Path)) from [MyImage] as B where B.ID = A.ID ) > 1
一上午,就写出了这么一句啊!精华!有木有!
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。