안녕하세요... 허접한 지식으로 늘 질문만 드리는 학생입니다..
이런 테이블이 있습니다..
Num Kind
-------------------
1 A
1 B
2 A
2 B
3 A
4 A
보시면 1번과 2번은 A B 둘다 가지고 있는데
3번과 4번은 A만 있습니다.
제가 원하는 결과는 3번과 4번을 추려내는 건데요..
그룹을 지어서 카운트를 내면 안되는게.. 사실 C 나 D 도 간혹 섞여 있어서
"딱 B가 없는것들" 이렇게 검색해야 합니다..
방법이 있을가요? ㅜ.ㅜ
Comment 1
-
여우비™
2013.09.13 16:39
kind 종류가 적을 경우
SELECT Num
, SUM(CASE WHEN Kind = 'A' THEN 1 ELSE 0 END) AS A
, SUM(CASE WHEN Kind = 'B' THEN 1 ELSE 0 END) AS B
, SUM(CASE WHEN Kind = 'C' THEN 1 ELSE 0 END) AS C
, SUM(CASE WHEN Kind = 'D' THEN 1 ELSE 0 END) AS D
FROM 테이블명
GROUP BY Num
HAVING SUM(CASE WHEN Kind = 'B' THEN 1 ELSE 0 END) = 0
으로 결과를 얻을 수는 있습니다. ;;