테이블 - 조인 순서가 SQL에서 중요합니까?




쿼리 최적화 (2)

B에 가입하기 전에 B에서 필드에 C를 결합하려고하면 다음과 같이됩니다.

SELECT A.x, A.y, A.z FROM A 
   INNER JOIN C
       on B.x = C.x
   INNER JOIN b
       on A.x = B.x

당신의 질의는 실패 할 것이므로이 경우에 질서가 중요합니다.

성능을 무시한 경우 아래 질문 A 및 B와 동일한 결과가 나타 납니까? C와 D는 어때?

-- A
select *
from   a left join b
           on <blahblah>
       left join c
           on <blahblan>


-- B
select *
from   a left join c
           on <blahblah>
       left join b
           on <blahblan>  

-- C
select *
from   a join b
           on <blahblah>
       join c
           on <blahblan>


-- D
select *
from   a join c
           on <blahblah>
       join b
           on <blahblan>  

일반 조인의 경우에는 그렇지 않습니다. TableA join TableBTableB join TableA 와 동일한 실행 계획을 생성합니다 (따라서 C 및 D 예제는 동일합니다)

왼쪽 및 오른쪽 조인의 경우 해당됩니다. TableA left Join TableBTableB left Join TableA 와 다르지만 TableB right Join TableA 와 같음





relational-database