본문 바로가기
코테 공부 🔥

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

by 서니서닝 2023. 4. 20.
728x90

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

 

프로그래머스

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

programmers.co.kr

문제 예시

FOOD_PRODUCT 테이블

원하는 출력값

FOOD_PRODUCT 테이블에서 가격이 제일 비싼 식품의 식품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 조회

 

 

시도 1)

이렇게 풀면

PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY는 다 첫 번째 행이 출력 되고

PRICE만 MAX(PRICE)로 출력된다..^^

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

 

📌 풀이1 )

PRICE가 MAX(PRICE)일 때의 값을 비교하여 출력해주어야 한다.

참고로 

WHERE PRICE = MAX(PRICE) 라는 코드는 오류가 발생한다.

(참고자료)

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

 

📌 풀이2 )

PRICE 내림차순으로 정렬하여 하나만 뽑아내는 방법도 있다.

SELECT *
FROM FOOD_PRODUCT
ORDER BY PRICE DESC
LIMIT 1;
728x90

댓글