USER_INFO 테이블에서 2021년에 가입한 회원 중 나이가 20세 이상 29세 이하인 회원 수를 구하는 문제이다.
| 테이블 | 주요 컬럼 |
|---|---|
USER_INFO | USER_ID, GENDER, AGE, JOINED |
SELECT COUNT(*) AS USERS
FROM USER_INFO
WHERE YEAR(JOINED) = 2021
AND AGE BETWEEN 20 AND 29
문제에는 2가지 조건이 있다. "21년에 가입한", "나이 20세 이상 29세이하"
둘다 WHERE절에 AND로 묶을 수 있다.
2021년 가입 조건은 JOINED 컬럼에서 연도만 추출하는 YEAR() 함수를 사용하면 되고, 나이 범위 조건 BETWEEN 20 AND 29로 나타낼 수 있다.
구체적으로 정리한 풀이 흐름:
COUNT(*)YEAR(JOINED) = 2021로 2021년 가입 필터AGE BETWEEN 20 AND 29로 나이 범위 필터SELECT COUNT(*) AS USERS
FROM USER_INFO
WHERE YEAR(JOINED) = 2021
AND AGE BETWEEN 20 AND 29