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
-
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