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

다람님의 프로필 이미지

작성한 질문수

[백문이불여일타] 데이터 분석을 위한 고급 SQL

서브쿼리 해커랭크 문제풀이 (08:08)

서브쿼리를 사용하지 않으면 성능이 떨어지나요?

22.04.30 18:14 작성

·

290

0

안녕하세요. 강의 잘 듣고 있습니다.
제가 문제를 먼저 풀어 보았을 때 아래와 같은 방식으로 풀이를 했는데요. 서브쿼리를 써서 풀면 성능이 더 좋은가요? 어떤 점이 더 좋은지 궁금합니다. 화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

답변 1

1

송혜정님의 프로필 이미지
송혜정
지식공유자

2022. 05. 03. 15:56

안녕하세요, 답변 드립니다.

문의주신 내용의 경우 성능보다는 추출 정확도와 관련이 있습니다.
이 문제처럼 months*salary의 최댓값이 1개이기 때문에 LIMIT 1을 써서 추출해도 됩니다. 하지만 1위가 여러 개인 경우에는 LIMIT 사용 시 정확히 추출이 되지 않기 때문에 서브쿼리와 같이 다른 방식을 사용해야 합니다.

예시 - 상품 카테고리 별 주문 수
(주문 수가 가장 많은 카테고리를 추출할 경우 A,B 가 모두 출력되어야 하지만 LIMIT 1을 사용할 경우 A또는 B 만 출력.)

카테고리   주문 수
      A           1,000
      B           1,000
      C             500

 

 

 

다람님의 프로필 이미지
다람
질문자

2022. 05. 05. 16:36

답변 감사합니다!

다람님의 프로필 이미지

작성한 질문수

질문하기