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

Organ·2023년 10월 27일
0

[문제 풀이]

목록 보기
113/123

문제


예제


내 풀이

-- 코드를 입력하세요
-- SELECT 년, 월, 성별 별 상품을 구매한 회원수
-- FROM USER_INFO, ONLINE_SALE
-- 년, 월, 성별을 기준으로 오름차순 정렬


-- 년 별 상품을 구매한 회원수
-- SELECT TO_CHAR(S.SALES_DATE, 'YYYY') YEAR, TO_NUMBER(TO_CHAR(S.SALES_DATE, 'MM'))
--        , COUNT(I.GENDER), COUNT(I.USER_ID)
-- FROM USER_INFO I JOIN ONLINE_SALE S ON I.USER_ID = S.USER_ID
-- WHERE GENDER IS NOT NULL
-- GROUP BY TO_CHAR(S.SALES_DATE, 'YYYY'), TO_NUMBER(TO_CHAR(S.SALES_DATE, 'MM'))
-- ORDER BY TO_CHAR(S.SALES_DATE, 'YYYY'), TO_NUMBER(TO_CHAR(S.SALES_DATE, 'MM'))
--          , COUNT(I.GENDER), COUNT(I.USER_ID);
-- GENDER를 COUNT 하는 것이 아니라 그룹으로 묶어줘야 함

-- USER_ID를 구분하여 세어줘야함
SELECT TO_CHAR(S.SALES_DATE, 'YYYY') YEAR, TO_NUMBER(TO_CHAR(S.SALES_DATE, 'MM'))
       , I.GENDER, COUNT(DISTINCT(I.USER_ID))
FROM USER_INFO I JOIN ONLINE_SALE S ON I.USER_ID = S.USER_ID
WHERE GENDER IS NOT NULL
GROUP BY TO_CHAR(S.SALES_DATE, 'YYYY'), TO_NUMBER(TO_CHAR(S.SALES_DATE, 'MM')), I.GENDER
ORDER BY TO_CHAR(S.SALES_DATE, 'YYYY'), TO_NUMBER(TO_CHAR(S.SALES_DATE, 'MM'))
         , I.GENDER;

0개의 댓글