zoukankan      html  css  js  c++  java
  • 要求必须全部重复的数据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 ABC
    group 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

    最终结果:

  • 相关阅读:
    作业11图
    作业11
    作业10
    总结一
    物联网相关知识
    第十二次作业
    附加题4
    第十一次作业
    附加题3
    第十次作业
  • 原文地址:https://www.cnblogs.com/linxianfeng/p/7163670.html
Copyright © 2011-2022 走看看