sql

mysql - 프로그래머스 298518 / 특정 물고기를 잡은 총 수 구하기

kdozlo 2024. 8. 19. 14:43

특정 물고기를 잡은 총 수 구하기
LV2

구현 방법

count, join, in을 이용하여 구현했습니다.


join
조인 순서를 고려했습니다. 현재 테이블에서 fish_name_info가 fish_info에 비해 작기 때문에 fish_name_info를 먼저 처리 했습니다.


in
or 이용하여 조건에 만족하는 값을 찾지 않고 in을 이용했습니다.
이유는 크게 두가지가 있습니다.

  1. 인덱스 : 인덱스를 설정한 경우 in을 통해 단일 인덱스 조회가 가능해집니다.
  2. 간결한 표현

코드

SELECT
    COUNT(fi.fish_type) AS "fish_count"
FROM
    fish_name_info fin
        JOIN fish_info fi ON fi.fish_type = fin.fish_type
WHERE
        fin.fish_name IN ('BASS', 'SNAPPER');
image