코딩테스트 | SQL/프로그래머스

[프로그래머스 | SQL] 물고기 종류 별 대어 찾기

iemxl 2024. 3. 20. 17:32

코딩테스트 연습 > SUM, MAX, MIN > 물고기 종류 별 대어 찾

 

 

물고기 종류 별 대어 찾기 Lv.3

물고기 종류 별로 가장 큰 물고기의 ID, 물고기 이름, 길이를 출력하는 SQL 문을 작성해주세요.
물고기의 ID 컬럼명은 ID, 이름 컬럼명은 FISH_NAME, 길이 컬럼명은 LENGTH로 해주세요.결과는 물고기의 ID에 대해 오름차순 정렬해주세요.단, 물고기 종류별 가장 큰 물고기는 1마리만 있으며 10cm 이하의 물고기가 가장 큰 경우는 없습니다.

 

 

 

첫 번째 풀이 :     100점

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 ASC;
  • WHERE IN 절을 더 공부해야겠다