3 개의 테이블이 사용되는 쿼리를 만들었습니다. 첫 번째 표에는 필요한 모든 이름이 있습니다. 두 번째와 세 번째 테이블은 청구서 금액이있는 이름을 알려줍니다. 하지만 첫 번째 테이블의 이름도 모두 필요합니다.외부 조인이 추가 항목을 표시하지 않음
SELECT a.name,
nvl(c.bill_amount,0)
FROM table_1 a left outer join table_2 b
ON a.name = b.name
left outer join table_3 c on B.phone_number = C.phone_number
AND B.email = C.email
where b.status = 'YES'
and a.VALID = 'Y';
이제 테이블 b와 c는 제한된 수의 이름을 제공합니다. 청구서에 5가 표시됩니다. 그러나 table_1에는 10 개의 이름이 있습니다. 나는 그들의 이름에 0 bill_amount로 그들도 표시하고 싶다. 나는 오라클을 사용하고있다.
변경 위치 : 'where (b.status ='YES '또는 b.status IS NULL)'또는이를 조인 (where 절을 가져옴)에 넣습니다. 'AND b.status ='YES '' –