프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
DISTINCT, JOIN, GROUP BY
YEAR, MONTH, GENDER 3개의 필드들로 GROUP BY 를 수행해야 합니다.
유저 수를 세는 부분에서는 DISTINCT 로 같은 유저는 한번만 카운팅할 수 있도록 합니다.
JOIN 은 기본적인 inner join 으로 처리해주면 됩니다.
쿼리문
SELECT YEAR(sales_date) AS YEAR,
MONTH(sales_date) AS MONTH,
A.gender AS GENDER,
COUNT(DISTINCT A.user_id) AS USERS
FROM user_info A JOIN online_sale B ON A.user_id = B.user_id
WHERE NOT ISNULL(A.gender)
GROUP BY YEAR(B.sales_date), MONTH(B.sales_date), A.gender
ORDER BY YEAR, MONTH, GENDER
'SQL > 프로그래머스 MySQL with code' 카테고리의 다른 글
프로그래머스 MySQL : [lv.4] 취소되지 않은 진료 예약 조회하기 (0) | 2023.07.06 |
---|---|
프로그래머스 MySQL : [lv.3] 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 (0) | 2023.07.06 |
프로그래머스 MySQL : [lv.4] 서울에 위치한 식당 목록 출력하기 (0) | 2023.07.05 |
프로그래머스 MySQL : [lv.2] 조건에 부합하는 중고거래 상태 조회하기 (0) | 2023.07.04 |
프로그래머스 MySQL : [lv.3] 조건에 맞는 사용자 정보 조회하기 (0) | 2023.06.13 |