<MySQL>
SELECT MST.YEAR
, MST.MONTH
, MST.GENDER
, COUNT(MST.GENDER) AS USERS
FROM (
SELECT YEAR(A.SALES_DATE) AS YEAR
, MONTH(A.SALES_DATE) AS MONTH
, B.GENDER
FROM ONLINE_SALE A
, USER_INFO B
WHERE A.USER_ID = B.USER_ID
AND B.GENDER IN (0, 1)
GROUP BY YEAR(A.SALES_DATE), MONTH(A.SALES_DATE), B.USER_ID
) MST
GROUP BY MST.YEAR, MST.MONTH, MST.GENDER
ORDER BY MST.YEAR, MST.MONTH, MST.GENDER
<Oracle>
SELECT MST.YEAR
, MST.MONTH
, MST.GENDER
, COUNT(MST.GENDER) AS USERS
FROM (
SELECT EXTRACT(YEAR FROM A.SALES_DATE) AS YEAR
, EXTRACT(MONTH FROM A.SALES_DATE) AS MONTH
, B.GENDER
FROM ONLINE_SALE A
, USER_INFO B
WHERE A.USER_ID = B.USER_ID
AND B.GENDER IN (0, 1)
GROUP BY EXTRACT(YEAR FROM A.SALES_DATE), EXTRACT(MONTH FROM A.SALES_DATE), B.USER_ID, B.GENDER
) MST
GROUP BY MST.YEAR, MST.MONTH, MST.GENDER
ORDER BY MST.YEAR, MST.MONTH, MST.GENDER
MySQL에서 MONTH(날짜), DATE_FORMAT(날짜, '%c') 차이
Oracle에서 EXTRACT(MONTH FROM 날짜), TO_CHAR(날짜, 'FMMM') 차이
정렬 기준의 차이를 확인할 수 있다.
프로그래머스 년, 월, 성별 별 상품 구매 회원 수 구하기 SQL
'SQL > 프로그래머스' 카테고리의 다른 글
[SQL] 프로그래머스 [Level-4] 저자 별 카테고리 별 매출액 집계하기 (0) | 2022.12.25 |
---|---|
[SQL] 프로그래머스 [Level-4] 5월 식품들의 총매출 조회하기 (0) | 2022.12.12 |
[SQL] 프로그래머스 [Level-4] 그룹별 조건에 맞는 식당 목록 출력하기 (0) | 2022.12.02 |
[SQL] 프로그래머스 [Level-4] 식품분류별 가장 비싼 식품의 정보 조회하기 (0) | 2022.12.02 |
[SQL] 프로그래머스 [Level-4] 서울에 위치한 식당 목록 출력하기 (0) | 2022.12.02 |