프로그래머스 SQL 고득점 Kit: SUM, MAX, MIN
- TOC {:toc}
이 글은 프로그래머스 SQL 고득점 Kit의 SUM, MAX, MIN 문제를 MySQL로 풀이한 것을 모아놓은 글입니다.
일종의 연습 기록이며 제가 정답을 받은 코드와 참고할만한 다른 코드를 같이 기록합니다. 필요한 경우 코드에 대한 해설을 기록합니다만 코드는 통과했어도 해설은 틀릴 수 있기 때문에 가볍게 참고해주시길 부탁드립니다. 피드백은 편하신 방법으로 자유롭게 주시면 감사하겠습니다.
순서는 처음 공부하는 입장에서 풀기 쉬웠던 순서로 정리했습니다.
59415 - 최댓값 구하기 [Level 1]
SELECT MAX(DATETIME) AS 시간
FROM ANIMAL_INS
59038 - 최솟값 구하기 [Level 1]
SELECT MIN(DATETIME) AS 시간
FROM ANIMAL_INS
131697 - 가장 비싼 상품 구하기 [Level 1]
SELECT MAX(PRICE) AS MAX_PRICE
FROM PRODUCT
59406 - 동물 수 구하기 [Level 2]
SELECT COUNT(*) AS COUNT
FROM ANIMAL_INS
59408 - 중복 제거하기 [Level 2]
SELECT COUNT(DISTINCT NAME) AS COUNT
FROM ANIMAL_INS
DISTINCT
를 사용하면 중복되는 값은 하나만 남긴다.
131115 - 가격이 제일 비싼 식품의 정보 출력하기 [Level 2]
SELECT
PRODUCT_ID,
PRODUCT_NAME,
PRODUCT_CD,
CATEGORY,
PRICE
FROM
FOOD_PRODUCT
ORDER BY
PRICE DESC
LIMIT
1
- 가격 내림차순으로 정렬한 뒤 한 개만 출력한다.
참고 답안
SELECT
*
FROM
FOOD_PRODUCT
WHERE
PRICE = SELECT MAX(PRICE) FROM FOOD_PRODUCT
- 서브쿼리를 이용해서
PRICE
가 최댓값과 같은 항목만 필터링 한다.