본문 바로가기

코딩 테스트 연습/SQL

[ 코딩 테스트 ] 가격이 제일 비싼 식품의 정보 출력하기

문제

조건

정답

SELECT * FROM FOOD_PRODUCT
WHERE PRICE = (SELECT MAX(PRICE) FROM FOOD_PRODUCT);
SELECT * FROM FOOD_PRODUCT
ORDER BY PRICE DESC
LIMIT 1;

 

후기

 

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

 

그냥 이렇게 하면 PRICE 만 최대값이 출력되고 나머지는 첫번째 열 값이 나오게 된다 ㅋㅋ

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

 

그렇다고 이렇게 작성하면 group 오류가 뜬다

 

사실 제일 간편하게 할 수 있는 건 아래쪽 코드인

PRICE 를 내림차순해서 첫번째 값을 가져오는게 아닐까 싶다