인프런 커뮤니티 질문&답변

장보현님의 프로필 이미지
장보현

작성한 질문수

SW 개발자를 위한 성능 좋은 SQL 쿼리 작성법

파생테이블, CTE, APPLY 활용, CASE 내부 Subquery 주의

JION을 이용한 중복 IO 제거 사례 강의 관련 문의

해결된 질문

작성

·

261

0

안녕하세요. 강의듣다가 궁금한사항이 있어 문의드립니다.

 

위 강의에서

SELECT 서브쿼리에서 동일 테이블 접근으로 인해 I/O 중복 발생하여 아래처럼 인라인뷰를 만들고 JOIN을 하면 테이블 중복 I/O가 발생하지 않는것을 이해했는데요.

 

그런데 SELECT절에 COUNT만 필요해서 스칼라 서브쿼리를 한번만 사용하게 되면 중복I/O가 발생하지 않기에 스칼라 서브쿼리를 쓰는게 성능상 문제가 없는걸까요?

 

중복I/O 발생과는 좀 다른 내용일수 있지만 강의 듣다가 궁금해서 문의드립니다.

 

답변주시면 감사하겠습니다.

답변 1

0

김정선SQL님의 프로필 이미지
김정선SQL
지식공유자

안녕하세요 장보현님,

 

네, 두 번 이상 중복해서 접근하는 경우를 전제합니다. 물론 한 번만 접근하는 경우에도 서브쿼리 방식과 조인 방식이 똑같이 처리될 수도 있고 다를 수도 있습니다. 성능 상 중요한 쿼리라면 실행 계획을 확인 및 검토하는 것을 권합니다.

 

도움이 되시길 바랍니다.

김정선 드림

 

장보현님의 프로필 이미지
장보현

작성한 질문수

질문하기