다음 예제를 보면서 이해를 하자.
1) SELECT *
FROM TB_EL1004D A
LEFT JOIN TB_EL1001M B
ON A.ID =B.ID
AND A.ID ='사장'
2) SELECT *
FROM TB_EL1004D A
LEFT JOIN TB_EL1001M B
ON A.ID =B.ID
WHERE A.ID ='사장'
이 두 문장의 차이점은 무엇일까?
1)은 ON절에 AND가 있으므로 A테이블중 A.ID가 사장인 경우와 B테이블을 LEFT JOIN해서 가져온다.
즉, A의 모든 정보를 가져오며 그 중 ON 조건에 맞는 것만 B테이블의 정보를 JOIN해서 가져온다. (해당되지 않는 행들의 B테이블 정보는 전부 NULL로 가져온다.)
2)는 A테이블과 B테이블을 LEFT JOIN한 후 A.ID가 사장인 애만 골라서 온다.