728x90
반응형
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
📌 문제
나이 정보가 없는 회원이 몇 명인지 출력하는 SQL문을 작성하라
✅ SQL 해결 방법
1️⃣ 기본적인 COUNT(*) 사용 (가장 일반적인 방법)
SELECT COUNT(*) AS USERS
FROM USER_INFO
WHERE AGE IS NULL;
2️⃣ SUM()을 활용한 방법
SELECT SUM(CASE WHEN AGE IS NULL THEN 1 ELSE 0 END) AS USERS FROM USER_INFO;
3️⃣ COUNT(AGE)를 활용한 방법
SELECT COUNT(*) - COUNT(AGE) AS USERS FROM USER_INFO;
⚒️ 효율성 비교
방법 | 장점 | 단점 |
COUNT(*) | 가장 직관적이고 효율적 | 없음 |
SUM(CASE) | 추가적인 조건이 필요할 때 유용 | CASE 문으로 인해 가독성이 떨어질 수 있음 |
COUNT(*) - COUNT(AGE) | NULL 개수 구하는 또 다른 방법 | 두 개의 COUNT() 연산이 필요 |

728x90
반응형
'Coding Test > Programmers' 카테고리의 다른 글
[SQL][Programmers] 가장 비싼 상품 구하기 (0) | 2025.03.04 |
---|---|
[SQL][Programmers] 강원도에 위치한 생산공장 목록 출력하기 (0) | 2025.03.04 |
[SQL][Programmers]상위 n개 레코드 (0) | 2025.03.04 |
[JAVA][Programmers] 정렬 - K번째수 (0) | 2025.02.04 |
[JAVA][Programmers] 정렬 - 가장 큰 수 (0) | 2025.02.04 |