집 >데이터 베이스 >MySQL 튜토리얼 >Oracle ( ) 연산자는 무엇이며 OUTER JOIN에서 어떻게 작동합니까?
Outer Join에서 Oracle의 ( ) 연산자 이해
외부 조인을 위한 이전 SQL 구문에 사용되는 Oracle의 ( ) 연산자는 종종 혼란을 야기합니다. ANSI 표준 JOIN
구문과 달리 비표준 연산자입니다. 외부 조인 쿼리 내에서 해당 기능을 살펴보겠습니다.
외부 조인 설명
외부 조인은 조인 조건(예: a.id=b.id
)을 기반으로 두 테이블(아래 예에서는 'a'와 'b')의 행을 연결합니다. INNER JOIN
과 달리 외부 조인은 다른 테이블에 일치하는 항목이 없더라도 행을 포함합니다.
( )로 오른쪽 외부 조인
다음 Oracle 문의 ( )
연산자는 오른쪽 외부 조인을 지정합니다.
<code class="language-sql">select ... from a, b where a.id = b.id(+)</code>
이 쿼리는 테이블 'b'의 모든 행을 반환합니다. 'b'의 행에 'a'에 일치하는 id
이 있으면 'a'의 해당 행이 포함됩니다. 그렇지 않은 경우 'a'의 열은 결과 집합에 NULL
값을 갖게 됩니다.
현대적인 대안
Oracle은 더 명확하고 강력한 ANSI-92 표준 JOIN
구문을 사용할 것을 강력히 권장합니다.
ANSI-92(권장):
<code class="language-sql">SELECT ... FROM a RIGHT JOIN b ON b.id = a.id</code>
Oracle의 ( ) 구문(사용되지 않음):
<code class="language-sql">select ... from a,b where a.id=b.id(+)</code>
중요 고려사항
( )
연산자에는 표준 JOIN
구문에 없는 제한 사항과 특이한 점이 있습니다. 가독성과 유지 관리성을 높이고 예상치 못한 동작을 방지하려면 Oracle에서 외부 조인 쿼리를 작성할 때 항상 ANSI-92 JOIN
구문의 우선 순위를 지정하세요.
위 내용은 Oracle ( ) 연산자는 무엇이며 OUTER JOIN에서 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!