본문 바로가기
코딩테스트/programming_SQL

[SQL] 주문량이 많은 아이스크림들 조회하기_133027

by prometedor 2023. 11. 17.

JOIN, GROUP BY, SUM 이용하기

 

https://school.programmers.co.kr/learn/courses/30/lessons/133027

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

SELECT a.FLAVOR
FROM FIRST_HALF a
    JOIN JULY b
    ON a.FLAVOR = b.FLAVOR
GROUP BY FLAVOR
ORDER BY SUM (a.TOTAL_ORDER + b.TOTAL_ORDER) DESC
LIMIT 3;

 

 

문제 사항 1 : 서브 쿼리를 이용하려했으나 작성해본 서브 쿼리에서는 LIMIT 을 사용할 수가 없었다.

문제 사항 2 : ORDER BY 를 이용하여 총 주문량을 더한 값을 큰 순서대로 상위 3개의 맛을 조회하였는데도 정답 처리가 되지 않았다.

 

문제 사항 1 해결 : ORDER BY 절에도 SUM 함수를 사용한 조건으로 정렬이 가능한지 몰랐다. ORDER BY 절에서 SUM 함수를 사용한 조건을 이용하여 정렬을 하도록 작성하였다.

문제 사항 2 해결 : JOIN 을 a.SHIPMENT_ID = b.SHIPMENT_ID 조건으로 해서 정답처리가 되지 않았던 것을 a.FLAVOR = b.FLAVOR 조건으로 수정하여 정답 처리를 받았다.

 

깨달은 바 : 아직 모르는 문법이 많은 것 같다. 문제를 통해 새로 알아갈 수 있어서 유익하다. JOIN 시 조건도 잘 확인하도록 하자.

ㄴ1. ORDER BY 절에서 SUM 함수를 사용한 조건으로 정렬이 가능하다.

ㄴ 2. JOIN 시 조건을 잘 확인하자.