728x90
❓ Question
❗ Answer
SELECT food.category, food.price, food.product_name
FROM food_product food
INNER JOIN (SELECT category, MAX(price) price
FROM food_product
GROUP BY category) p
ON food.category = p.category AND food.price = p.price
WHERE food.category IN ('과자','국','김치','식용유')
ORDER BY food.price DESC;
📌 Discussion
- INNER JOIN으로 특정 카테고리별 최고가인 제품의 레코드만 불러온다.
- WHERE로 JOIN이 완료된 레코드에서 필터링
'SQL 문제풀이' 카테고리의 다른 글
[프로그래머스 SQL] LV.4 5월 식품들의 총매출 조회하기 (0) | 2023.08.04 |
---|---|
[프로그래머스 SQL] LV.3 대여 기록이 존재하는 자동차 리스트 구하기 (0) | 2023.08.04 |
[프로그래머스 SQL] LV.3 없어진 기록 찾기 (0) | 2023.08.04 |
[프로그래머스 SQL] LV.3 즐겨찾기가 가장 많은 식당 정보 출력하기 (0) | 2023.08.04 |
[프로그래머스 SQL] LV.2 3월에 태어난 여성 회원 목록 출력하기 (0) | 2023.08.04 |