반응형
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
종류별로 가장 큰 물고기의 길이와 그 물고기의 ID를 출력해야 한다.
물고기의 ID를 출력해야 하는 부분 때문에 단순히 집계 함수로 문제를 해결할 수 없다.
따라서 물고기의 종류별로 가장 긴 실제 레코드를 서브쿼리로 구한 뒤 메인 쿼리와 비교하여 해결해야 한다.
NAME을 출력해야 하는 부분은 INNER JOIN을 통해 해결할 수 있다.
SELECT
ID,
FISH_NAME,
LENGTH
FROM
FISH_INFO AS FI
INNER JOIN
FISH_NAME_INFO AS FNI
ON
FNI.FISH_TYPE = FI.FISH_TYPE
WHERE
(FI.FISH_TYPE, FI.LENGTH) IN (
SELECT
FISH_TYPE,
MAX(LENGTH)
FROM
FISH_INFO
GROUP BY
FISH_TYPE
)
ORDER BY
FI.ID
반응형
'SQL 쿼리 연습 > SUM, MAX, MIN' 카테고리의 다른 글
[Lv.1 / 프로그래머스 / SQL] 잡은 물고기 중 가장 큰 물고기의 길이 구하기 (0) | 2024.06.03 |
---|---|
[Lv.2 / 프로그래머스 / SQL] 연도별 대장균 크기의 편차 구하기 (0) | 2024.04.30 |
[Lv.2 / 프로그래머스 / SQL] 조건에 맞는 아이템들의 가격의 총합 구하기 (0) | 2024.03.19 |
[Lv.2 / 프로그래머스 / SQL] 중복 제거하기 (0) | 2023.03.23 |
[Lv.1 / 프로그래머스 / SQL] 최댓값 구하기 (0) | 2023.03.13 |