0

誰かがこのクエリを手伝ってくれますか:

顧客が複数のレコードを持つデータがあります (単一のテーブルでは、これはテーブルに読み込まれたフラット ファイルです)。

Name  Policy
Fred  SSS
Fred  SST
Joe   SSS

Policy='SSS' であるが、その顧客が 'SSS' ポリシーしか持っていないすべてのレコードを引き出す必要があります。したがって、ジョーだけが上から返されます

4

2 に答える 2

2
select name
from yourtable
group by name
having count(policy)=1 and max(policy)='SSS'
于 2012-10-18T08:23:26.147 に答える
1
SELECT Name
FROM tableName a
WHERE Policy = 'SSS'
GROUP BY Name
HAVING COUNT(*) = (SELECT COUNT(*) FROM tableName b WHERE a.Name = b.Name)

SQLFiddleデモ

于 2012-10-18T08:24:18.030 に答える