♧ 프로그래머스 SQL/Lv. 2

[프로그래머스 SQL] 가격이 제일 비싼 식품의 정보 출력하기 (SUM, MAX, MIN) | MySQL

Grit_0913 2024. 8. 16. 16:02

[프로그래머스 SQL] 가격이 제일 비싼 식품의 정보 출력하기 (SUM, MAX, MIN) | MySQL

하단의 목차를 클릭하여 이동할 수 있습니다 :)

1. 문제 (+풀이)
2. 해답
        2-1. LIMIT 
        2-2. 서브 쿼리

1. 문제 (+풀이)

  • ORDER BY ~ DESC ~ LIMIT 1
    • 최대값을 필터링할 때 정렬한 뒤에 LIMIT을 사용해서 추출할 수 있다.
  • WHERE 절에 서브 쿼리를 사용하는 방법도 있다.
    • 그러나 서브 쿼리보다는 LIMIT을 활용한 코드가 더욱 간결하며 디버깅을 수행하기 편하다.
    • 정말 서브 쿼리가 필요한 경우가 아니라면 더 나은 풀이를 사용하는 것이 좋다.

2. 해답

2-1. LIMIT

SELECT
    PRODUCT_ID,
    PRODUCT_NAME,
    PRODUCT_CD,
    CATEGORY,
    PRICE
FROM FOOD_PRODUCT
ORDER BY PRICE DESC
LIMIT 1

 

 

 

2-2. 서브 쿼리

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