프로그래머스 ORACLE 식품분류별 가장 비싼 식품의 정보 조회하기DB/쿼리 문제풀이2023. 10. 6. 14:58
Table of Contents
1.가장 높은 가격 찾아냄
SELECT CATEGORY, MAX(PRICE)
FROM FOOD_PRODUCT
WHERE CATEGORY IN ('과자', '식용유', '국', '김치')
GROUP BY CATEGORY
2.정답
SELECT CATEGORY, PRICE AS MAX_PRICE, PRODUCT_NAME
FROM FOOD_PRODUCT
WHERE (CATEGORY, PRICE) IN (
SELECT CATEGORY, MAX(PRICE)
FROM FOOD_PRODUCT
WHERE CATEGORY IN ('과자', '식용유', '국', '김치')
GROUP BY CATEGORY
)
ORDER BY MAX_PRICE DESC
<WHERE (CATEGORY, PRICE) IN (...)>
**(CATEGORY, PRICE)**는 서브쿼리에서 가져온 최대 가격 정보와 메인 쿼리의 각 물건의 카테고리와 가격을 의미합니다. 이렇게 함으로써 서브쿼리에서 찾은 각 카테고리별 최대 가격과, FOOD_PRODUCT 테이블의 각 물건의 카테고리와 가격을 비교하게 됩니다.
'DB > 쿼리 문제풀이' 카테고리의 다른 글
프로그래머스 ORACLE 조건에 맞는 도서와 저자 리스트 출력하기 (0) | 2023.10.06 |
---|---|
프로그래머스 ORACLE 카테고리 별 도서 판매량 집계하기 (0) | 2023.10.06 |
프로그래머스 ORACLE 조건에 맞는 사용자와 총 거래금액 조회하기 (0) | 2023.10.06 |
프로그래머스 ORACLE 즐겨찾기가 가장 많은 식당 정보 출력하기 (0) | 2023.10.06 |
프로그래머스 ORACLE 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 (0) | 2023.10.06 |