Postgre에 인덱스를 일치하는 3 개 테이블을 조인.완전 외부 내가 SQL 쿼리 A.z 및 B.z 차 열쇠</p> <pre><code>SELECT * FROM A FULL OUTER JOIN B ON A.z = B.z WHERE A.z = 1 OR B.z = 1 </code></pre> <p>이 SQL
목적은 기본 키가 주어진 값과 일치하는 동안 두 테이블에 대한 완전 외부 조인을 수행하는 것입니다. 따라서 한 행만 반환됩니다.
하지만 3 개 이상의 테이블로 확장하는 방법에 대해 혼란스러워했습니다. 기본 키가 주어진 인덱스와 일치하여 하나의 행만 반환되는 제한이 유지됩니다. 어떻게 할 수 있니? 수
SELECT *
FROM (SELECT * FROM A WHERE z = 1) A
FULL OUTER JOIN (SELECT * FROM B WHERE z = 1) B ON A.z = B.z
(IMO) 어떤 데이터 소스가 어떤 조인 조건이 더 명확 :
당신은 하나 개의 행을 반환 할 경우, 완전 외부 당신을 위해 무엇을 찾고있는 조인? 완전 외부 조인은 두 테이블의 모든 행을 반환하고 일치하지 않는 경우 키에 null을 배치합니다. – jle
첫 번째 쿼리는 임의의 데이터에 대해 많은 행을 반환 할 수 있기 때문에 데이터 제약에 대해 (또는 예제를 작성하십시오.) 제발 알려주십시오. – Aprillion
@jle 아이디어는 3 개의 테이블 중 1 개에도 행이 있으면 주어진 열쇠 때문에, 나는 그것을 원한다. – Aman