ID LINE
001 1
001 2
002 1
002 2
003 1
004 2求只使用过LINE 1 的ID
解是  003

解决方案 »

  1.   

    SELECT ID, COUNT(DISTINCT LINE)
    FROM TABLENAME
    GROUP BY ID
    WHERE COUNT(DISTINCT LINE) = 1
      

  2.   

    是用HAVING,不是用WHERE
    SELECT ID, COUNT(DISTINCT LINE)
    FROM TABLENAME
    GROUP BY ID
    HAVING COUNT(DISTINCT LINE) = 1
      

  3.   

    DECLARE @tb TABLE([ID] varchar(10), [LINE] varchar(10))
    INSERT INTO @tb
        SELECT  '001', '1'
        UNION ALL SELECT '001', '2'
        UNION ALL SELECT '002', '1'
        UNION ALL SELECT '002', '2'
        UNION ALL SELECT '003', '1'
        UNION ALL SELECT '004', '2'
    SELECT ID, COUNT(DISTINCT LINE)
    FROM @tb T
    WHERE EXISTS(SELECT 1 FROM @tb WHERE ID = T.ID AND LINE = 1)
    GROUP BY ID
    HAVING COUNT(DISTINCT LINE) = 1
      

  4.   

    终于知道EXISTS了
    谢谢 萤火虫!
    结帐!