본문 바로가기

database

[Database] Group by/프로그래머스/식품분류별 가장 비싼 식품의 정보 조회하기

2024.03.09 - [database] - [Database] SQL Group by, 프로그래머스/즐겨찾기가 가장 많은 식당 정보 출력하기

 

[Database] SQL Group by, 프로그래머스/즐겨찾기가 가장 많은 식당 정보 출력하기

https://school.programmers.co.kr/learn/courses/30/lessons/131123 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞

leoroh.tistory.com

 

위의 글에서 설명한 문제를 틀렸었다. 

이와 비슷한 문제를 풀어봄으로써 틀린 이유를 복기했다. 위 문제와 마찬가지로 GROUP BY를 사용해야 하는 문제다.

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

 

프로그래머스

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

programmers.co.kr

 

SELECT FP1.CATEGORY, FP1.PRICE AS MAX_PRICE, FP1.PRODUCT_NAME
FROM 
	FOOD_PRODUCT FP1 
	JOIN (SELECT CATEGORY, MAX(PRICE) AS MAX_PRICE FROM FOOD_PRODUCT GROUP BY CATEGORY) FP2
	ON FP1.CATEGORY = FP2.CATEGORY
WHERE FP1.PRICE = FP2.MAX_PRICE
AND FP1.CATEGORY IN ('과자', '국', '김치', '식용유')
ORDER BY FP1.PRICE DESC;

 

문제에 주어진 조건에 따라 WHERE 절을 작성해줘야 정답이다!

이때 식품분류가 '과자', '국', '김치', '식용유'인 경우만 출력시켜 주시고 ...

문제를 잘 읽자.