2011-09-12 3 views
1

나는 하나의 테이블을 가지고 - 사용자 - 그리고 다른 테이블 색상 있습니다. 모든 사용자는 Colors에 더 많은 레코드를 생성 할 수 있으며, 각각은 해당 사용자가 "소유"합니다 (Colors는 Users 테이블의 "Id"라는 필드와 동일한 "Userid"라는 필드를 보유 함) .mysql을 선택

예 : 사용자 당은 색상에이 기록을 만들었습니다 : 레드 블루 블랙

사용자 필 색상의 레코드를 만들었습니다. 파랑

이제 파란색과 빨간색 모두를 생성 한 사용자를 선택하고 싶습니다. 하나의 선택 진술에서이 작업을 수행 할 수 있습니까?

감사합니다.

답변

2

시도 (예를 들어, 당신의 테이블 구조에 따라 수정!) : 물론

SELECT X.UserID FROM 
(SELECT UserID, COUNT(DISTINCT COLOR) C FROM COLORS WHERE COLOR IN ('Red', 'Blue') GROUP BY UserID) X 
WHERE X.C = 2 
+0

고마워요 - 록 :-) – Per

+0

당신은 환영합니다 :-) – Yahia

0

예 하나의 select 문에서이 작업을 수행 할 수 있습니다. 당신이 이것을 작동시키지 못한다면 아마도 테이블 구조와 시도를 제공 할 것입니다.

1

당신이

힌트 :) 수 있습니다 : 그것은 아마 "가입"포함됩니다.

Q : 지금까지 시도한 것은 무엇입니까?

Q : 숙제가 있습니까? 우리는 당신이 대답을 찾을 수 있도록 도울 수 있습니다 -하지만 우리는 단지 당신에게 대답을 줄 수 없습니다 ...

+1

그래서 당신은 *이 * 대답? 그러면 댓글로 게시 하시겠습니까? –