셀렉트절에서 서브쿼리 써야할 경우는 조인으로 해결보는게 원만할거같으면서도
만약 서브쿼리 이거 하나당 1쿼리정도의 비용이라고 생각하면
셀렉트절의 서브쿼리는 뽑아온 row하나당 발동하니까
n번 쿼리 나가는거 아닌가 생각되어서 말임.
어제 조인 풀어헤치기 하면서 추가로 했던게
(이건 누가 시켜서한거 아니라 자의로 했음)
서브쿼리일 필요가 없는걸 조인으로 끄집어낸거거든?
조인한번이면 될걸 서브쿼리 n번 할 필요가 없으니까.
이게 성능차이 큰가??
조인 풀기는 효과가 없고,
서브쿼리 조인화시키는게 효과가 컸을수도있겠다는 생각이 드네
어제 0.7 -> 0.3 만든거에서
성능차이는 잇지 병신아
서브쿼리 하나당 1쿼리 비용인거 맞지??? 그냥 쿼리문 하나로 퉁쳐서 썼다고 하나의 쿼리인게 아니라, 1+n번의 쿼리인거지? 셀렉트절에서 썼으면?
보통 스칼라 서브쿼리는 어떨때 쓰냐면, 공통코드성격이 띄는 테이블들을 스칼라 서브쿼리로 씀. 예를들어 학생ID별 출퇴근기록 이란 테이블이있고, 학생정보가 있는 테이블이 있을때, 두개를 조인하기보다는 학생정보는 스칼라서브쿼리로 작성하는것이 더 성능적인 측면에서 높음.
딱
with절로 미리 따면 되잖아 ㅉㅉ
너가 풀어쓰든 서브쿼리 쓰든 옵ㄴ티마이저 힌트 안쓰면 옵티마이저가 쿼리변환해서 동작할 수도 잇음
너가 정확히 이렇게 돌아가도록 하고싶다면 옵티마이저 힌트로 강제해야함