SQL - 문제 미리보기

문제 1604

medium
COUNT(*)과 COUNT(컬럼명)의 차이점에 대한 설명으로 올바른 것은?
A. COUNT(*)과 COUNT(컬럼명)은 항상 동일한 결과를 반환한다
B. COUNT(*)은 NULL 값을 포함하여 세고, COUNT(컬럼명)은 NULL 값을 제외하고 센다
C. COUNT(컬럼명)이 COUNT(*)보다 항상 더 큰 값을 반환한다
D. 둘 다 NULL 값을 제외하고 센다

정답: B

COUNT() 함수의 NULL 처리 차이: COUNT(*) - 모든 행 포함: • 테이블의 모든 행을 센다 • NULL 값이 있어도 해당 행을 포함 • 행(row) 기준으로 카운팅 COUNT(컬럼명) - NULL 제외: • 지정된 컬럼이 NULL이 아닌 행만 센다 • NULL 값이 있는 행은 제외 • 값(value) 기준으로 카운팅 실제 데이터 예시: ```sql -- 샘플 데이터 CustomerID | CustomerName | Phone 1 | 홍길동 | 010-1234-5678 2 | 김철수 | NULL 3 | 이영희 | 010-9876-5432 4 | 박민수 | NULL -- 전체 고객 수 (NULL 포함) SELECT COUNT(*) FROM Customers; -- 결과: 4 -- 전화번호가 있는 고객 수 (NULL 제외) SELECT COUNT(Phone) FROM Customers; -- 결과: 2 -- 고객명이 있는 고객 수 (모든 이름이 있으므로) SELECT COUNT(CustomerName) FROM Customers; -- 결과: 4 ```

💡 학습 팁

이 문제를 포함한 SQL 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.