inblog logo
|
silver
    SQL문제풀기

    [SQL문제풀기] 물고기 종류 별 대어 찾기

    silver's avatar
    silver
    Dec 11, 2024
    [SQL문제풀기] 물고기 종류 별 대어 찾기
     

    문제

    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/293261
     

    내가 작성한 오답

    SELECT F.ID, N.FISH_NAME, F.LENGTH FROM FISH_INFO F JOIN FISH_NAME_INFO N ON F.FISH_TYPE = N.FISH_TYPE WHERE F.LENGTH IN (SELECT MAX(LENGTH) FROM FISH_INFO GROUP BY FISH_TYPE) ORDER BY ID ASC;
    → FISH_TYPE별 최대 길이를 구해서 그 길이와 동일한 물고기를 찾는 쿼리이다.
    → 동일한 최대 길이를 가진 다른 타입이 있을 경우를 생각하지 않았다.
    → 그래서 서브 쿼리에 FISH_TYPE도 함께 출력해야한다.
     

    내가 작성한 정답

    SELECT F.ID, N.FISH_NAME, F.LENGTH FROM FISH_INFO F JOIN FISH_NAME_INFO N ON F.FISH_TYPE = N.FISH_TYPE WHERE (F.FISH_TYPE, F.LENGTH) IN ( SELECT I.FISH_TYPE, MAX(I.LENGTH) FROM FISH_INFO I GROUP BY I.FISH_TYPE) ORDER BY F.ID ASC;
     
    💡
    다중 컬럼 비교가 가능하다!
     
    Share article

    silver

    RSS·Powered by Inblog