Post

[Programmers] 293261번 - 물고기 종류 별 대어 찾기 [MySQL]

[Programmers] 293261번 - 물고기 종류 별 대어 찾기 [MySQL]

문제 링크


1. 문제 풀이


FISH_INFO 테이블과 FISH_NAME_INFO 테이블을 FISH_TYPE으로 JOINFISH_TYPELENGTH를 서브쿼리를 통한 튜플 비교해 필터링했다. 서브쿼리는 각 타입별 최대 길이를 반환하도록 했다.


2. 쿼리


1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT
    i.ID,
    n.FISH_NAME,
    i.LENGTH
FROM FISH_INFO AS i
JOIN FISH_NAME_INFO AS n
    ON i.FISH_TYPE = n.FISH_TYPE
WHERE (i.FISH_TYPE, i.LENGTH) IN (
    SELECT FISH_TYPE, MAX(LENGTH)
    FROM FISH_INFO
    GROUP BY FISH_TYPE
)
ORDER BY i.ID;

This post is licensed under CC BY 4.0 by the author.