본문 바로가기
코테 공부 🔥

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

by 서니서닝 2024. 8. 19.
728x90

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

문제 예시

 

원하는 결과

📌 풀이 )

* 틀린 풀이가 있으면 댓글 남겨주세요!

 

 

  • 기본 테이블 조인:
    • FISH_INFO 테이블과 FISH_NAME_INFO 테이블을 물고기의 종류(FISH_TYPE)를 기준으로 조인합니다. 이로써 각 물고기 종류에 대응하는 이름을 가져올 수 있습니다.
  • 가장 큰 물고기 선택:
    • WHERE FI.LENGTH = (SELECT MAX(LENGTH) FROM FISH_INFO WHERE FISH_TYPE = FI.FISH_TYPE) 조건을 사용하여, 각 물고기 종류별로 가장 큰 물고기를 찾습니다.
    • 여기서 서브쿼리는 해당 물고기 종류에 대한 MAX(LENGTH) 값을 반환합니다.
  • 결과 정렬:
    • 최종적으로 물고기의 ID를 기준으로 오름차순 정렬하여 결과를 출력합니다.

 

 

SELECT 
    FI.ID,
    FN.FISH_NAME,
    FI.LENGTH
FROM 
    FISH_INFO FI
JOIN 
    FISH_NAME_INFO FN ON FI.FISH_TYPE = FN.FISH_TYPE
WHERE 
    FI.LENGTH = (
        SELECT 
            MAX(LENGTH)
        FROM 
            FISH_INFO
        WHERE 
            FISH_TYPE = FI.FISH_TYPE
    )
ORDER BY 
    FI.ID;
728x90

댓글