Per Outer Row
상관 서브쿼리 실행 과정
상관 서브쿼리는 외부 쿼리의 현재 행 값을 내부 조건에 넣어 평가합니다.
외부 쿼리
서브쿼리
주의 지점
1
외부 행 선택
products p에서 현재 상품의 category를 읽습니다.
→
2
내부 쿼리 실행
p2.category = p.category 조건으로 같은 카테고리 최고가를 구합니다.
→
3
현재 행 판단
현재 price가 최고가와 같으면 결과에 남깁니다.
외부 행
서브쿼리 조건
판단
노트북 · 전자
전자 최고가
같으면 선택
키보드 · 전자
전자 최고가
낮으면 제외
소설 · 도서
도서 최고가
같으면 선택
행마다 내부 조건이 달라지므로, 데이터가 크면 JOIN이나 윈도우 함수로 바꿀 수 있는지 검토합니다.