Road to Data Scientist

[프로그래머스] 물고기 종류 별 잡은 수 구하기 Lv.2 본문

코딩 테스트/SQL

[프로그래머스] 물고기 종류 별 잡은 수 구하기 Lv.2

ShazelP 2024. 6. 16. 23:28

물고기 종류 별 잡은 수 구하기

 

FISH_INFO 테이블

- ID: 물고기 아이디

- FISH_TYPE: 물고기 종류(숫자)

- LENGTH: 물고기의 길이 (cm)

- TIME: 물고기 잡은 날짜

FISH_NAME_INFO 테이블

- FISH_TYPE: 물고기 종류(숫자)

- FISH_NAME: 물고기 이름(문자)

 

문제

FISH_NAME_INFO에서 물고기의 종류 별 물고기의 이름과 잡은 수를 출력하는 SQL문을 작성해주세요. 물고기의 이름 컬럼명은 FISH_NAME, 잡은 수 컬럼명은 FISH_COUNT로 해주세요. 결과는 잡은 수 기준으로 내림차순 정렬해주세요.

 

정답예시

 

코드

SELECT COUNT(*) AS FISH_COUNT, A.FISH_NAME
FROM FISH_NAME_INFO A
JOIN FISH_INFO B
ON A.FISH_TYPE=B.FISH_TYPE
GROUP BY A.FISH_NAME
ORDER BY FISH_COUNT DESC;

 

설명

1. FISH_NAME_INFO 테이블과 FISH_INFO 테이블을 각각 A, B라고 명칭하고 공통값인 FISH_TYPE 으로 JOIN 한다.

2. 그리고 총 개수 COUNT(*) 와 FISH_NAME 을 각 테이블에서 추출하고 개수를 FISH_COUNT 로 명명한다.

3. 총 개수를 세기 위해 FISH_NAME 으로 GROUP BY 를 한다.

4. 최종 출력 결과를 FISH_COUNT 를 기준으로 내림차순으로 정렬한다.

 

출처

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

 

프로그래머스

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

programmers.co.kr