[프로그래머스_MySQL] 가격이 제일 비싼 식품의 정보 출력하기

hyeji·2023년 1월 4일
1
💡 FOOD_PRODUCT테이블에서 가격이 제일 비싼 식품의 식품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 조회하는 SQL문을 작성해주세요.

처음에 WHERE에 MAX 써서 PRICE가 MAX(PRICE)랑 같은 행을 뽑으려고 했는데

SELECT *
FROM FOOD_PRODUCT
WHERE MAX(PRICE) = PRICE;

이렇게 하면 될 줄 알았다 ㅎㅎ

근데 오류나서 한 번 고쳐봤다

SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, MAX(PRICE) AS 'PRICE'
FROM FOOD_PRODUCT;

아닌 걸 알지만 한 번 실행해 봄ㅎ

역시 아니었다!

저렇게 하니까 PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY는 다 첫 번째 행이 출력 되고 PRICE만 MAX(PRICE)로 바껴있었다.

그래서 검색해서 고쳐봄

SELECT *
FROM FOOD_PRODUCT
WHERE PRICE = (SELECT MAX(PRICE) FROM FOOD_PRODUCT);

이렇게 해야 했음!!

근데 검색해서 알게 된건데

SELECT *
FROM FOOD_PRODUCT
ORDER BY PRICE DESC
LIMIT 1;

그냥 이렇게 ORDER BY 쓰고 제일 위에 거 하나 뽑아내도 되는 거였음ㅎ

profile
Data Analyst

0개의 댓글