-- 풀이 쿼리
SELECT YEAR(O.SALES_DATE) AS YEAR
, MONTH(O.SALES_DATE) AS MONTH
, U.GENDER
, COUNT(DISTINCT U.USER_ID) AS USERS
FROM USER_INFO U
JOIN ONLINE_SALE O
ON U.USER_ID = O.USER_ID
WHERE GENDER IS NOT NULL
GROUP BY YEAR, MONTH, GENDER
ORDER BY YEAR, MONTH, GENDER
- Lv 4 짜리 문제였지만 그다지 어려운 문제는 아니다. 조건만 잘 맞춰주면 된다.
- 단, 풀이에서 사용한 YEAR(), MONTH()등의 함수는 MySQL 외에 다른 DBMS에선 안 먹힐 수도 있으니, EXTRACT나 DATE_TRUNC등의 다른 함수에 대해서도 알고 있어야 할 것이다.
'코딩테스트 > SQL - 프로그래머스' 카테고리의 다른 글
SQL 고득점 kit(IS NULL) - 업그레이드 할 수 없는 아이템 구하기 (0) | 2024.02.20 |
---|---|
SQL 고득점 kit(GROUP BY) - 입양 시각 구하기(2) (0) | 2024.02.19 |
SQL 고득점 kit(GROUP BY) - 식품분류별 가장 비싼 식품의 정보 조회하기 (4) | 2024.02.15 |
SQL 고득점 kit(GROUP BY) - 성분으로 구분한 아이스크림 총 주문량 (0) | 2024.02.15 |
SQL 고득점 kit(GROUP BY) - 대여 횟수가 많은 자동차들의 월별 대여 횟수 구하기 (0) | 2024.02.13 |