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