스칼라 쿼리, 인라인 뷰 0 1 807

by 화조 [SQL Query] 스칼라 인라인 [2020.11.05 12:42:30]


안녕하세요. 예전에 면접관이 물어본 질문이 갑자기 생각나서 문의드립니다.

 

인라인 뷰와 스칼라 쿼리 둘 다 사용해서 짤 수 있는 쿼리인데 어떤 경우에 스칼라 쿼리를 사용하고 인라인 뷰를 사용하는지 아시나요?

 

라는 질문을 받았는데 스칼라 쿼리는 단일 행인 경우, 인라인 뷰는 다중 행인 경우라고 답했거든요. 근데 탐탁치 않아 보이더라구요.

 

어떤 답변이 정답이였는지 궁금합니다.

by 마농 [2020.11.05 13:31:14]

스칼라서브쿼리와 인라인뷰를 비교하는 것 자체는 좀 이상하긴 합니다.
이 두가지가 비교 대상이 될 수 있는지 의문이네요.
그냥 스칼라서브쿼리 자체를 놓고 본다면.
보통 스칼라서브쿼리는 아우터 조인 형태로 대체가 가능한데요.
아우터 조인 형태로 바꾸면서 인라인뷰를 사용한다고 생각해서 잘문하신 것인지? 의문이네요.
암튼 스칼라서브쿼리의 특징은
메인 쿼리 결과 행마다 반복해서 수행된다는 단점이 있습니다.
그래서 조인으로 푸는게 더 좋습니다.
그런데 이렇게 반복 수행되는 스칼라 서브쿼리의 장점이 하나 있는데.
동일한 조건값에 대해서는 재실행 없이 재사용을 한다는 것이죠.
메인테이블의 조건값에 중복값이 많고 값의 가지수가 적다면
서브쿼리 수행 회수가 줄어서 오히려 조인보다 더 좋은 성능을 내기도 합니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입