SQL 문제
문제 20. 가격이 제일 비싼 식품의 정보 출력하기(2중 SELECT)
kagan-draca
2024. 7. 12. 14:36
단순히
SELECT SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, MAX(PRICE)
FROM FOOD_PRODUCT
로 문제가 해결될 줄 알았다. 그런데, MAX(PRICE)에 맞는 가격은 찾았지만 SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY 속성에서 MAX(PRICE)에 해당하는 항목이 아닌 제일 첫 번째 튜플 값이 출력됐다.
혹시나 하는 생각에
WHERE PRICE =
(
SELECT MAX(PRICE) FROM FOOD_PRODUCT
)
로 수정해 본 결과 MAX(PRICE)에 해당하는 튜플 값들이 출력 됐다.
아마도, 단독으로 MAX(PRICE)에 해당하는 결과를 찾고 싶을 때는 SELECT MAX(PRICE) FROM ~~~로 사용해도 무방하지만, MAX(PRICE)에 해당하는 모든 튜플 값들을 출력할 때는 2중 SELECT문을 사용해야 하는 것 같다.
제출한 코드 :
SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE
FROM FOOD_PRODUCT
WHERE PRICE =
(
SELECT MAX(PRICE) FROM FOOD_PRODUCT
)