Every Step Matters

[프로그래머스 SQL Lv.1] 잔챙이 잡은 수 구하기 (MySQL) 본문

Database/SQL

[프로그래머스 SQL Lv.1] 잔챙이 잡은 수 구하기 (MySQL)

imnyoung 2025. 11. 27. 09:46

문제링크 : https://school.programmers.co.kr/learn/courses/30/lessons/293258

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

1. 테이블 : FISH_INFO

Column name Type Nullable
ID INTEGER FALSE
FISH_TYPE INTEGER FALSE
LENGTH FLOAT TRUE
TIME DATE FALSE
잡은 물고기의 길이가 10cm 이하일 경우에는 LENGTH가 NULL 이며, LENGTH에 NULL 만 있는 경우는 없다.

 

2. 문제

잡은 물고기 중 (1) 길이가 10cm 이하인 물고기의 수를 출력하는 SQL 문을 작성해주세요. (2) 물고기의 수를 나타내는 컬럼 명은 FISH_COUNT로 해주세요.

 

3. 문제풀이

(1) 길이가 10cm 이하인 물고기의 수를 출력

: 문제에서 물고기 길이가 10cm 이하인 경우는 length가 null이라고 명시되어 있다. 따라서 길이가 10cm이하인 물고기의 수를 출력하기 위해서는 길이가 null인 물고기의 수를 출력하면 된다.

WHERE 조건에 길이 조건을 넣고, SELECT문에 COUNT(*) 또는 COUNT(id)를 하면 조건에 맞는 컬럼 개수(즉, 물고기의 수)를 출력한다.

 

4. 정답

따라서 정답은

SELECT count(*) as FISH_COUNT
FROM fish_info
WHERE length is null  -- 잡은 물고기의 길이가 10cm 이하일 경우에는 LENGTH 가 NUL