0

我目前已经修剪了我的数据集的一部分,但我需要进一步过滤它。

我的目标是仅隔离返回单行的那些 ID。

例如,使用如下数据集:

ID          Client Name                  Client Manager
1           XYZ Corp.                    Ralph
2           Bob's Marketplace            Marianne
2           Bob's Marketplace            David
3           Davis Auto Repair            Ralph
3           Davis Auto Repair            Marianne
4           Everything Inc.              David
5           Pet World                    Marianne

我需要返回:

ID          Client Name                  Client Manager
1           XYZ Corp.                    Ralph
4           Everything Inc.              David
5           Pet World                    Marianne
4

4 回答 4

1
SELECT ID, 
       Client_Name, 
       Client_Manager
FROM table_name
WHERE ID IN 
(
    SELECT ID 
    FROM table_name
    GROUP BY ID
    HAVING COUNT(*) = 1
)
于 2013-07-05T16:01:44.473 回答
0
SELECT *
FROM your_table a, (SELECT ID FROM your_table
                    GROUP BY ID
                    HAVING COUNT(*) = 1) b
WHERE a.ID = b.ID;

见 SQLFiddle 演示

于 2013-07-05T16:02:10.353 回答
0
SELECT ID, [Client Name], min([Client Manager]) as [Client Manager]
FROM dbo.Table1
GROUP BY ID, [Client Name]
HAVING COUNT(*) = 1
于 2013-07-05T15:57:02.127 回答
0

尝试这个

SELECT ID, [Client Name], [Client Manager] FROM Table1
WHERE ID IN 
(
  SELECT ID FROM Table1
  GROUP BY ID
  HAVING COUNT(ID) = 1
)
于 2013-07-05T15:59:20.567 回答