728x90
반응형
#SELECT문 OUTER JOIN에서 조건절 ON, WHERE 차이
#OUTER JOIN시 ON절에는 우측(널값으로 채워지는 쪽)의 추가 제약조건을 넣고
WHERE절에는 좌측의 추가 제약조건을 넣어야 합니다.
#ON
JOIN을 하기전에 필터링을 합니다. (=ON 조건으로 필터링이 된 레코들간 JOIN이 이루어집니다.)
WHERE : JOIN을 한 후 필터링을 합니다. (=JOIN을 한 결과에서 WHERE 조건절로 필터링이 이루어집니다.)
1. 정상적인 데이터
SELECT *
FROM A LEFT OUTER JOIN B
ON A.ID = B.ID
AND B.CODE = 'BLUE'
WHERE A.ID = 'JEFF';
2. 비정상적인 데이터
SELECT *
FROM A LEFT OUTER JOIN B
WHERE A.ID = 'JEFF'
AND B.CODE = 'BLUE';
#SQL 동작 순서 참고
FROM - ON - JOIN - WHERE ~~~
728x90
반응형
'IT > SQL' 카테고리의 다른 글
[SQL] - Oracle, MySQL, MS-SQL 시퀀스(SEQUENCE) 설정 방법 (0) | 2021.09.30 |
---|---|
[SQL] - Oracle, MySQL, MS-SQL CASE 문 (CASE WHEN THEN ELSE END)조건문 사용법 (0) | 2021.08.04 |
[SQL] - SQL SELECT 쿼리문 동작 순서 (0) | 2021.01.25 |
[SQL] - 데이터베이스 조인(JOIN) 문법 및 사용방법 (0) | 2020.08.08 |
[SQL] - 데이터베이스 서브쿼리 문법 및 사용 방법 (0) | 2020.08.08 |
댓글