首页 > 代码库 > 要求必须全部重复的数据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--想了半天才写出来的