알고리즘 공부/SQL

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

마달랭 2024. 10. 18. 11:04
반응형

테이블 정보

Column name Type Nullable
PRODUCT_ID VARCHAR(10) FALSE
PRODUCT_NAME VARCHAR(50) FALSE
PRODUCT_CD VARCHAR(10) TRUE
CATEGORY VARCHAR(10) TRUE
PRICE NUMBER TRUE

 

 

예시 테이블

PRODUCT_ID PRODUCT_NAME PRODUCT_CD CATEGORY PRICE
P0018 맛있는고추기름 CD_OL00008 식용유 6100
P0019 맛있는카놀라유 CD_OL00009 식용유 5100
P0020 맛있는산초유 CD_OL00010 식용유 6500
P0021 맛있는케첩 CD_OL00001 소스 4500
P0022 맛있는마요네즈 CD_OL00002 소스 4700

 

 

문제

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

 

 

아이디어

가격이 제일 비싼 식품 = MAX를 활용해야 겠다.

품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 조회 = PRICE가 MAX인 서브쿼리를 만들고 참조해야겠다.

 

 

정답

-- 코드를 입력하세요
SELECT F.PRODUCT_ID, F.PRODUCT_NAME, F.PRODUCT_CD, F.CATEGORY, F.PRICE
FROM FOOD_PRODUCT F, (
    SELECT MAX(PRICE) AS MAX_VAL
    FROM FOOD_PRODUCT
) S
WHERE F.PRICE = S.MAX_VAL

 

 

참고사항

PRICE가 MAX인 값을 출력하는 서브쿼리를 참조하여 PRICE가 해당 값인 상품 정보를 출력했다.

 

 

 

 

 

 

728x90
반응형