2013-05-24 4 views
0

2 개의 테이블 : 스레드와 멤버가 있습니다.상대 테이블의 수정 개수 행을 가진 여러 테이블 중에서 선택하십시오.

테이블 스레드 : id | 이름 | ...

테이블 구성원 : id | threadId | 이름 | ...

스레드에는 2 명 이상의 회원이있을 수 있습니다. 회원은 다른 스레드에 존재할 수 있습니다. 나는 단지 2 명의 회원을 가진 하나의 스레드를 원한다.이 멤버 중 하나는 AAA라는 이름을 가진다.

DB : sqlite in android. having

답변

2

사용 집계 :

select m.ThreadId 
from members m 
group by m.ThreadId 
having count(*) = 2 and 
     sum(case when m.name = 'AAA' then 1 else 0 end) = 1; 
관련 문제