1. 가격이 제일 비싼 식품의 정보 출력하기(Oracle)
2. 문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/131115
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
3. 문제
문제 설명
다음은 식품의 정보를 담은 FOOD_PRODUCT 테이블입니다. FOOD_PRODUCT 테이블은 다음과 같으며 PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE는 식품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 의미합니다.
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 |
문제
FOOD_PRODUCT 테이블에서 가격이 제일 비싼 식품의 식품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 조회하는 SQL문을 작성해주세요.
예시
FOOD_PRODUCT 테이블이 다음과 같을 때
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 |
SQL을 실행하면 다음과 같이 출력되어야 합니다.
PRODUCT_ID | PRODUCT_NAME | PRODUCT_CD | CATEGORY | PRICE |
P0020 | 맛있는산초유 | CD_OL00010 | 식용유 | 6500 |
4. 풀이
- FOOD_PRODUCT테이블에서 PRICE의 값이 MAX인 값들만 서브쿼리로 찾는다.
- 서브쿼리에서 찾은 값과 같은 가격을 가지고 있는 PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE 열을 조회한다.
5. 소스 코드
SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE
FROM FOOD_PRODUCT
WHERE PRICE = (SELECT MAX(PRICE)
FROM FOOD_PRODUCT)
'프로그래머스SQL' 카테고리의 다른 글
[프로그래머스/SQL] 중성화 여부 파악하기 오라클(Oracle) (0) | 2023.01.31 |
---|---|
[프로그래머스/SQL] 중복 제거하기 오라클(Oracle) (0) | 2023.01.31 |
[프로그래머스/SQL] 오랜 기간 보호한 동물(1) 오라클(Oracle) (0) | 2023.01.16 |
[프로그래머스/SQL] 있었는데요 없었습니다 오라클(Oracle) (0) | 2023.01.16 |
[프로그래머스/SQL] 없어진 기록 찾기 오라클(Oracle) (0) | 2023.01.16 |