고객 중 그룹에 속하지 않는 모든 멤버를 보여주는 쿼리를 실행하려고합니다. 두 개의 테이블을 공통적 인 CustomerID
으로 비교하고 멤버 ID를 사용하여 두 번째 테이블에없는 멤버를 보여줍니다. CustomerGroupMember
.공통 ID를 기반으로 MySQL에서 두 테이블 비교
다음은 두 테이블의 샘플입니다.
고객 회원
id | CustomerID | First | Last
---------------------------------
123 | 1234 | Jim | Sample
129 | 1234 | Julie | Clark
137 | 1234 | Jack | Thomas
289 | 1234 | Sue | Smith
고객 그룹 회원
MemberID | CustomerID | GroupID
---------------------------------
129 | 1234 | 19
289 | 1234 | 20
다음은 어떤 결과를 생성하지 않는 것 내 쿼리입니다. 고객 그룹 회원 테이블에없는 사람을 출력하고 싶습니다. 테이블의 예에서 나는 당신이 당신의 좌 가입 내부에 가입 변환하는 두 번째 조건 (CustomerGroupMember.CustomerID = '1234'
)과 회원 (123)의 출력과 137
SELECT CustomerMember.* FROM CustomerMember
LEFT JOIN
CustomerGroupMember ON CustomerMember.id = CustomerGroupMember.MemberID
WHERE
CustomerMember.CustomerID = '1234' AND CustomerGroupMember.CustomerID = '1234'
AND CustomerGroupMember.MemberID IS NULL
는 기본적으로 WHERE 및 변경에 AND 연산 중 하나를 변경합니다. 추가 도움말은 [매우 간단한 SQL 쿼리 인 것처럼 보이는 MCVE를 제공해야하는 이유는 무엇입니까?] (http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an- 나에게 -a-the-be-a-very-simple-sql-query) – Strawberry
네, 몇 가지 샘플 데이터를보고 싶습니다. MCVE (샘플 데이터로 테이블 문 작성)를 추가하면 정말 멋지게 될 것입니다. 당신은 당신이 말하는 것을 알고 있습니다,하지만 우리는 그렇게하지 않습니다. – EoinS