首页 > 代码库 > 要求必须全部重复的数据sql--想了半天才写出来的
要求必须全部重复的数据sql--想了半天才写出来的
CREATE TABLE [dbo].[ABC]( [AA] [nvarchar](500) NULL, [BB] [nvarchar](500) NULL, [CC] [nvarchar](500) NULL, [DD] [nvarchar](500) NULL) ON [PRIMARY]GO--DELETE FROM [dbo].[ABC]INSERT INTO ABC values(‘1‘,‘1‘,‘1‘,‘1‘)INSERT INTO ABC values(‘1‘,‘1‘,‘2‘,‘1‘)INSERT INTO ABC values(‘1‘,‘1‘,‘2‘,‘1‘)INSERT INTO ABC values(‘1‘,‘1‘,‘2‘,‘1‘)INSERT INTO ABC values(‘1‘,‘1‘,‘3‘,‘1‘)--------------------------------------------INSERT INTO ABC values(‘2‘,‘2‘,‘4‘,‘2‘)INSERT INTO ABC values(‘2‘,‘2‘,‘4‘,‘2‘)INSERT INTO ABC values(‘2‘,‘2‘,‘4‘,‘2‘)
需求是这样的,上图红色部分中的数据是我们需要的,该怎么取出这部分的数据呢?下面是我个人的写法,仅以参考:
SELECT d.* from (SELECT AA,BB,DD from (select * from (select AA,BB,CC,DD from ABCgroup by AA,BB,CC,DD) a) b group by AA,BB,DD having(COUNT(AA)=1 AND COUNT(BB)=1 AND COUNT(DD)=1)) c inner join ABC d on c.AA=d.AA and c.BB=d.BB and c.DD=d.DD
最终结果:
要求必须全部重复的数据sql--想了半天才写出来的
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。