728x90
WITH J2021 AS
(
-- 2021년 가입한 회원
SELECT USER_ID
FROM USER_INFO
WHERE EXTRACT(YEAR FROM JOINED) = '2021'
),
B2022 AS
(
-- 2022년 구매한 회원
SELECT USER_ID
, EXTRACT(YEAR FROM SALES_DATE) AS YEAR
, EXTRACT(MONTH FROM SALES_DATE) AS MONTH
FROM ONLINE_SALE
WHERE EXTRACT(YEAR FROM SALES_DATE) = '2022'
)
SELECT B.YEAR
, B.MONTH
, COUNT(DISTINCT B.USER_ID) AS PURCHASED_USERS
, ROUND(COUNT(DISTINCT B.USER_ID) / (SELECT COUNT(1) FROM J2021), 1) AS PUCHASED_RATIO
FROM J2021 A
JOIN B2022 B
ON A.USER_ID = B.USER_ID
GROUP BY B.YEAR, B.MONTH
ORDER BY B.YEAR, B.MONTH
728x90
'Coding Practice > Programmers - SQL' 카테고리의 다른 글
[Programmers] 대장균들의 자식의 수 구하기 (0) | 2024.09.04 |
---|---|
[Programmers] FrontEnd 개발자 찾기 (0) | 2024.07.20 |
[Programmers] 상품 별 오프라인 매출 구하기 (0) | 2024.07.08 |
[Programmers] 보호소에서 중성화한 동물 (0) | 2024.07.08 |
[Programmers] 오랜 기간 보호한 동물(1) (0) | 2024.07.08 |