반응형
Oracle 쿼리를 다루는 사람이라면 한번쯤 "JOIN할때 ON과 WHERE 중 어디에 조건을 줘야 효과적일까?" 에 대한 생각을 해보았을 것이다.
ANSI 표준에 따라서는 조인 조건을 ON절에 달아주고, WHERE절에는 검색조건을 달게 됩니다.
ON 절에 검색조건을 달아도 쿼리 실행에는 영향이 없으나, ON절에 조건을 주면 Join으로 인하여 테이블을 합칠 때 조건이 걸려서 하나의 가상테이블이 만들어집니다. 그와 반대로 WHERE절에 조건이 걸리면, 다 만들어진 테이블을 다시 훑으면서 해당 조건에 맞는 결과물을 반환하는 게 되기에 두번 일하는 것처럼 동작합니다.
결과적으로 ON절에 거는게 더 효과적이라고 볼 수 있습니다.
반응형
'Database' 카테고리의 다른 글
Commit, Rollback, Savepoint (0) | 2023.11.08 |
---|---|
BOOLEAN의 표현 in Oracle (0) | 2023.11.08 |
ORA-04031 in Oracle Error (0) | 2023.11.08 |
EXISTS와 IN의 차이_Oracle (0) | 2023.11.07 |
Oracle Comment 설정 (0) | 2023.11.07 |