「SQL초급떼기
코딩테스트 연습JOIN상품을 구매한 회원 비율 구하기(level 5)- chat GPT에게 물어봣더니...
DayGo
2023. 7. 27. 20:57
역시 문제가 좀 이상하게 헷갈리게 출제된듯하다!!
CHAT GPT 는 년,월을 주문년월이 아닌 가입년월로 계산했다!!역시 불명확한 부분!!!!!
또한 정확하게 주문내역에 UESER_ID가 있는경우만 조건으로 한정해서 표현했다!! 굿잡!!!!
ROUND함수는 헷갈려서 소수점 2째자리 까지 출력했으며, 비중또한 *100을 해서 백분율로 표현했다!!!
SELECT
EXTRACT(YEAR FROM u.JOINED) AS year,
EXTRACT(MONTH FROM u.JOINED) AS month,
COUNT(DISTINCT CASE WHEN s.USER_ID IS NOT NULL THEN u.USER_ID END) AS num_purchasing_users,
ROUND(COUNT(DISTINCT CASE WHEN s.USER_ID IS NOT NULL THEN u.USER_ID END) * 100.0 / COUNT(DISTINCT u.USER_ID), 2) AS purchasing_ratio
FROM
USER_INFO u
LEFT JOIN
ONLINE_SALE s
ON
u.USER_ID = s.USER_ID
WHERE
EXTRACT(YEAR FROM u.JOINED) = 2021
GROUP BY
EXTRACT(YEAR FROM u.JOINED),
EXTRACT(MONTH FROM u.JOINED)
ORDER BY
year,
month;