[SQL] 잔챙이 잡은 수 구하기

하나·2025년 1월 12일
0

SQL TEST

목록 보기
6/9
post-thumbnail

🪄문제 분석 요약

잡은 물고기 중 길이가 10cm 이하인 물고기 수 출력

  • 잡은 물고기의 길이가 10cm 이하인 경우 LENGTH = NULL

🪄접근법

  • LENGTH 컬럼에서 NULL이 있는 경우를 IS NULL로 찾는다.
  • COUNT를 활용하여 NULL이 있는 데이터 수를 계산한다.

🪄SQL

SELECT COUNT(*) AS FISH_COUNT
FROM FISH_INFO
WHERE LENGTH IS NULL;

🪄틀린 부분 수정 OR 다른 풀이

-- 틀린 풀이
SELECT COUNT(LEGNTH) AS FISH_COUNT
FROM FISH_INFO
WHERE LENGTH IS NULL; 
  • COUNT를 할 때 해당 컬럼에 대해서만 COUNT를 하면 될 것이라고 생각해서 LENGTH 컬럼만 COUNT를 걸었다. 하지만 COUNT=0이라고 문제가 발생.

🪄관련 개념

💡 COUNT(컬럼명)해당 열에서 NULL이 아닌 값의 개수를 센다.

  • WHERE 절로 NULL 값만 필터링된 상태이므로 COUNT(LENGTH) 사용 시 LENGTH컬럼은 NULL만 있으므로 COUNT=0이 나타남.

💡 COUNT(*)는 행 전체를 기준으로 개수를 센다.

  • COUNT(*) 사용 시 LENGTH컬럼의 NULL 여부와 상관 없이 현재 필터링된 전체 데이터 행의 수를 세므로 COUNT값이 원하는데로 산출!
profile
Start with hello world:)

0개의 댓글

관련 채용 정보