on과 where 절을 나눈 이유는 뭘까 ? #29
Unanswered
yunseorim1116
asked this question in
Q&A
Replies: 1 comment
-
|
😄 와우 잘 정리하셨네영! ㅎㅎㅎ |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
1. 의미론적 명확성
ON: 테이블 간의 관계를 정의합니다.
WHERE: 결과 집합을 필터링합니다.
이렇게
분리함으로써 쿼리의 의도를 더 명확하게 표현할 수 있습니다.2. 쿼리 최적화
데이터베이스 엔진이 쿼리를 더 효율적으로 실행할 수 있게 해줍니다.
ON 조건을 먼저 적용하여 조인할 데이터의 양을 줄인 후 WHERE 조건으로 최종 결과를 필터링합니다.
3. OUTER JOIN의 동작 차이
특히 LEFT JOIN이나 RIGHT JOIN에서 ON과 WHERE의 동작이 다릅니다.
ON: 조인 결과에 영향을 주지만 OUTER JOIN의 "모든 행 포함" 특성을 유지합니다.
WHERE: 최종 결과 집합을 필터링하므로 OUTER JOIN의 특성을 무시할 수 있습니다.
4. 가독성과 유지보수성
복잡한 쿼리에서 조인 조건(ON)과 필터링 조건(WHERE)을 분리하면 쿼리를 이해하고 수정하기가 더 쉬워집니다.
5. 다중 조인 상황
여러 테이블을 조인할 때 각 조인에 대한 조건을 명확히 지정할 수 있습니다.
@lukasjhan
보충하고싶은 내용이 있나요?
Beta Was this translation helpful? Give feedback.
All reactions