[프로그래머스]level4-년, 월, 성별 별 상품 구매 회원 수 구하기-MySQL

s2ul3·2022년 11월 4일
0
post-custom-banner

문제링크

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

문제설명


- 문제
USER_INFO 테이블과 ONLINE_SALE 테이블에서 년, 월, 성별 별로 상품을 구매한 회원수를 집계하는 SQL문을 작성해주세요. 결과는 년, 월, 성별을 기준으로 오름차순 정렬해주세요. 이때, 성별 정보가 없는 경우 결과에서 제외해주세요.

알고리즘

년, 월, 성별 별로 상품을 구매한 USER 수를 count할 때 동일한 USER_ID가 여러번 나와도 하나로 처리해야하므로 속성명 앞에 DISTINCT를 붙여야한다.COUNT(DISTINCT ONLINE_SALE.USER_ID)

코드

SELECT YEAR(SALES_DATE) AS 'YEAR', MONTH(SALES_DATE) AS 'MONTH', USER_INFO.GENDER AS 'GENDER', COUNT(DISTINCT ONLINE_SALE.USER_ID) AS 'USERS'
FROM USER_INFO, ONLINE_SALE
WHERE USER_INFO.USER_ID = ONLINE_SALE.USER_ID AND USER_INFO.GENDER IS NOT NULL
GROUP BY YEAR(SALES_DATE), MONTH(SALES_DATE), USER_INFO.GENDER
ORDER BY 1, 2, 3
profile
statistics & computer science
post-custom-banner

0개의 댓글