년, 월, 성별 별 상품 구매 회원 수 구하기

는는·2023년 2월 8일
0

SQL - 문제 풀이

목록 보기
28/77

년, 월, 성별 별 상품 구매 회원 수 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/131532

두 테이블을 join으로 합쳐줍니다.

SELECT *
FROM USER_info A join online_sale B USING (user_id)

성별 정보가 없는 경우 제외해달라고 했으니, WHERE절에서 성별 정보가 있는 정보만 가져오겠습니다.

WHERE gender is not null

지정된 컬럼 부터 불러와야하는데요. 판매일의 년, 월, 성별, user_id의 숫자를 가져오는데요 동일한 날짜, 회원 id, 상품 id 하나의 판매 데이터만 존재 해야하기 때문에 user_id의 중복을 제거해줘야 합니다.

SELECT year(sales_date) year, month(sales_date) month, gender, count(DISTINCT B.user_id)

이제 년, 월, 성별 기준으로 묶어주고 년, 월, 성별 기준 오름차순 정렬해주면 정답입니다.

GROUP BY year,month,gender
ORDER BY year,month,gender

정답

SELECT year(sales_date) year, month(sales_date) month, gender, count(DISTINCT B.user_id)
FROM USER_info A join online_sale B USING (user_id)
WHERE gender is not null
GROUP BY year,month,gender
ORDER BY year,month,gender

0개의 댓글