왼쪽 테이블의 모든 결과와 훨씬 큰 테이블의 추가 정보를 반환하는 매우 기본적인 LEFT OUTER JOIN이 있습니다. 왼쪽 테이블에는 4935 개의 레코드가 포함되어 있지만 외부 테이블에 추가하면 레코드 수가 훨씬 큽니다.
내가 아는 한 왼쪽 외부 조인은 왼쪽 테이블의 모든 레코드를 오른쪽 테이블의 일치하는 레코드와 일치시킬 수없는 행에 대해 null 값을 반환한다는 것은 절대적인 복음입니다. 왼쪽 테이블에있는 것보다 많은 행을 반환하는 것은 불가능하지만 모두 동일하게 발생합니다!
SQL 쿼리는 다음과 같습니다.
SELECT SUSP.Susp_Visits.SuspReason, SUSP.Susp_Visits.SiteID
FROM SUSP.Susp_Visits LEFT OUTER JOIN
DATA.Dim_Member ON SUSP.Susp_Visits.MemID = DATA.Dim_Member.MembershipNum
어쩌면 구문에서 실수를했거나 LEFT OUTER JOIN에 대한 나의 이해가 불완전합니다. 아마도 누군가 이것이 어떻게 발생할 수 있는지 설명 할 수 있기를 바랍니다.
추신
큰 답변에 감사드립니다. LEFT OUTER JOINS에 대한 이해가 훨씬 좋아졌습니다.하지만 왼쪽 테이블에 존재하는만큼의 레코드 만 반환하도록이 쿼리를 수정할 수있는 방법을 제안 할 수 있습니까?
이 쿼리는 순전히 보고서를 생성하기위한 것이며 중복 된 일치 항목은 문제를 혼동하기 만합니다.
/추신