1. 문제목적
- WHERE 절: 특정 조건을 만족하는 데이터를 필터링하기 위해 사용.
- NULL 처리: NULL 값을 다루는 방법.
- COUNT 함수: 특정 조건을 만족하는 데이터의 개수를 구하는 방법.
- AS 키워드: 결과 컬럼 이름을 변경하는 방법.
2. 핵심개념
WHERE 절
WHERE는 데이터베이스에서 특정 조건을 만족하는 데이터를 필터링할 때 사용된다.
SELECT column_name FROM table_name WHERE condition;
NULL 처리
- NULL 값은 데이터가 존재하지 않음을 의미한다.
- NULL과 비교할 때는 IS NULL 또는 IS NOT NULL 조건을 사용해야 한다.
WHERE column_name IS NULL;
COUNT 함수
COUNT는 특정 조건을 만족하는 행의 수를 계산하는 집계 함수이다.
SELECT COUNT(*) FROM table_name WHERE condition;
AS 키워드
결과 컬럼에 별칭을 부여하여 가독성을 높인다.
SELECT COUNT(*) AS column_alias FROM table_name;
3. 문제해결 절차
- 데이터 분석:
- FISH_INFO 테이블에서 LENGTH가 10 이하이거나 NULL인 물고기의 수를 구해야 한다.
- 결과 컬럼은 FISH_COUNT로 명명해야 한다.
- 조건 설정:
- LENGTH가 10 이하인 경우 또는 NULL인 데이터를 필터링한다.
- NULL 처리:
- WHERE 조건에서 IS NULL을 사용해 NULL 값을 포함.
- 집계:
- 필터링된 데이터를 COUNT 함수로 개수를 계산한다.
- 결과 출력:
- 결과에 별칭(FISH_COUNT)을 부여한다.
4. 코드작성
-- FISH_INFO 테이블에서 LENGTH가 10 이하이거나 NULL인 물고기의 수를 조회
SELECT
COUNT(*) AS FISH_COUNT -- 필터링된 물고기의 개수를 FISH_COUNT라는 별칭으로 출력
FROM
FISH_INFO -- 데이터를 조회할 테이블
WHERE
LENGTH IS NULL; -- LENGTH가 NULL인 데이터를 포함
5. 코드분석
SELECT 절
- SELECT COUNT(*)는 FISH_INFO 테이블의 조건에 맞는 행의 개수를 반환한다.
- AS FISH_COUNT는 결과 컬럼의 이름을 FISH_COUNT로 설정하여 가독성을 높인다.
FROM 절
- 데이터를 조회할 대상 테이블인 FISH_INFO를 지정.
WHERE 절
- LENGTH IS NULL 조건은 LENGTH가 NULL인 데이터도 포함한다.
- OR 연산자를 사용하여 두 조건을 모두 만족하는 데이터를 필터링한다.
COUNT 함수
- COUNT는 필터링된 행의 개수를 계산한다.
- NULL 값은 기본적으로 COUNT 함수에서 제외되지만, WHERE LENGTH IS NULL로 포함시켰다.
'SQL Kit > SELECT' 카테고리의 다른 글
특정 형질을 가지는 대장균 찾기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.03 |
---|---|
가장 큰 물고기 10마리 구하기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.03 |
Python 개발자 찾기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.03 |
조건에 맞는 회원 수 구하기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.03 |
상위 n개 레코드 추출하기 [ 프로그래머스 | SQL Kit | Level 1 ] (0) | 2025.03.01 |