반응형
문제
상반기에 판매된 아이스크림의 맛을 총주문량을 기준으로 내림차순 정렬하고 총주문량이 같다면 출하 번호를 기준으로 오름차순 정렬하여 조회하는 SQL 문을 작성해주세요.
분명 쉬운 문제라 했는데 보자마자 어렵게 느껴졌다. 쪼개서 생각했다.
1. 상반기 아이스크림 맛을 총주문량을 기준으로 내림차순 정렬하고
2. 총주문량이 같은 경우 출하 번호를 기준으로 오름차순 정렬
1번 문장만 쿼리문으로 짜면 쉽다.
문제는 2번이다. 총주문량이 같은 경우를 어떻게 조건으로 넣지?
dense_rank() 함수를 써야할 것 같아서 썼는데 오답이다.
order by를 2번 한다?
중요한 것은 문제 예시에 나와있는 테이블이 아니었다. 내가 어떤 테이블을 가지고 쿼리문을 실행하는지 파악하는 것이 먼저다. SELECT * FROM FIRST_HALF; 을 해보면 다음과 같은 테이블이 나온다.
총주문량(TOTAL_ORDER)이 같은 경우가 없다. 즉, ORDER BY를 차례대로 해주면 된다.
ORACLE 쿼리문
SELECT FLAVOR
FROM FIRST_HALF
ORDER BY TOTAL_ORDER DESC, SHIPMENT_ID ASC;
해답보다 문제파악이 먼저다... 어떤 테이블을 사용하는지 확인부터 하자.
반응형
'코딩 하루 1문제 프로젝트' 카테고리의 다른 글
[프로그래머스] 성분으로 구분한 아이스크림 총 주문량 (0) | 2023.09.24 |
---|---|
[프로그래머스] 가격이 제일 비싼 식품의 정보 출력하기 (0) | 2023.09.18 |
[백준 2438번 문제] 별 찍기 - 1 (0) | 2023.08.07 |
[백준 27866번 문제] 문자와 문자열 (0) | 2023.07.20 |
[백준 2739번 문제] 구구단 (0) | 2023.07.17 |