문제 설명
다음은 어느 의류 쇼핑몰에 가입한 회원 정보를 담은 USER_INFO 테이블입니다. USER_INFO 테이블은 아래와 같은 구조로 되어있으며 USER_ID, GENDER, AGE, JOINED는 각각 회원 ID, 성별, 나이, 가입일을 나타냅니다.
GENDER 컬럼은 비어있거나 0 또는 1의 값을 가지며 0인 경우 남자를, 1인 경우는 여자를 나타냅니다.
문제
USER_INFO 테이블에서 2021년에 가입한 회원 중 나이가 20세 이상 29세 이하인 회원이 몇 명인지 출력하는 SQL문을 작성해주세요.
예시
예를 들어 USER_INFO 테이블이 다음과 같다면
2021년에 가입한 회원 중 나이가 20세 이상 29세 이하인 회원은 USER_ID 가 1, 3, 5 인 회원들 이므로, 다음과 같이 결과가 나와야 합니다.
SELECT COUNT(USER_ID) AS USERS
FROM USER_INFO
WHERE YEAR(JOINED)='2021' AND (AGE >= 20 AND AGE <=29)
모르겠어서 블로그 찾아봤는데 저 답 본 뒤로 저거 말고 답이 안떠오른다 ㅎ..
SQL 풀때는 문제를 잘 읽는게 중요하다고 생각하는데 여기도 보면 문제에 답이 다 있긴하다.
User_INFO
테이블에서 찾아야하니까 FROM USER_INFO
인거고 WHERE 뒤에를 몰랐는데 2021년에 가입한 사람이니까 JOINED에 2021인 사람, 그리고(AND) 그 중 20세 이상 29세 이하인 회원을 출력하면 되는 것!