동일한 테이블의 여러 열에 대한 SQL 조인


136

하위 쿼리가 2 개 있지만 동일한 테이블에서 열을 함께 결합하는 데 문제가 있습니다. 나는 시도했다 :

SELECT * FROM

(SELECT userid, listid 
FROM user_views_table
WHERE date='2013-05-15' AND view_type='lists') a

JOIN

(SELECT sourceid, destinationid
FROM actions_table
WHERE date='2013-05-15' AND payloadtype='lists_user' AND actiontype='delete') b

ON a.userid = b.sourceid
ON a.listid = b.destinationid;

간단히 쿼리를 ON a.userid = b.sourceid끝내면 작동하지만 어떻게 다른 열에서 이러한 테이블을 조인 할 수 ON a.listid = b.destinationid있습니까 ??

도움을 주셔서 감사합니다.


2
답변 주셔서 감사합니다 .. argh 그냥 ";"이 없었어요 이전 쿼리 종료시
user1899415

답변:


201

다음과 같이 참여하십시오.

ON a.userid = b.sourceid AND a.listid = b.destinationid;

7
다시 돌아 보면 분명해 보이지만 OR이 잘 작동한다는 사실을 알고 싶었습니다. 많은 레코드가 생겼습니다.
wastubbs

68

조건 1과 조건 2에 참여하려면 다음과 같이 AND 키워드를 사용하십시오.

ON a.userid = b.sourceid AND a.listid = b.destinationid;
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.