一个删选数据的例子,使用GROUP、DISTINCT实例解析
编程学习 2021-07-05 13:42www.dzhlxh.cn编程入门
今天遇到的问题,纠结了一上午,终于解决了。在此记录下来,自我认为还有很多类似的问题都可以套用这段代码
需求描述:
一个表MyImage,列有:号码ID,路径PATH
如:
ID PATH
1 C:/
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