2012-10-18 4 views
0

사람이 해주십시오 쿼리 좀 도와 줄래 :중복 쿼리

나는 고객이 여러 레코드가 데이터가

(단일 테이블에서, 이것은 테이블로 읽어 플랫 파일입니다) 예를 들어,

Name Policy 
Fred SSS 
Fred SST 
Joe SSS 

Policy = 'SSS'인 모든 레코드를 추출해야하지만 그 고객은 'SSS'정책 만 가지고 있어야합니다. 그래서 오직 조 위

+1

에서 반환 될 것이다 – podiluska

답변

2
select name 
from yourtable 
group by name 
having count(policy)=1 and max(policy)='SSS' 
당신이 완벽하게 많은 감사를
+0

작품을 사용하는 SQL의 다양성을 지정하면 도움이 –

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 Demo