[TIL] 23.04.06

문종현·2023년 4월 6일
0

TIL

목록 보기
102/119
post-custom-banner

👉 오늘 한 일

  • 프로그래머스 SQL 문제풀이
  • 책 집필 - 편집 툴 적용

프로그래머스 SQL

1. 상품을 구매한 회원 비율 구하기

  • lv 5, JOIN
  • 가입일이 2021년인 고객을 전부 세서 서브쿼리로 활용. 메인쿼리에서는 두 테이블을 조인한 후 가입일이 2021년인 고객을 필터링해서 판매년도(YEAR(sales_date)), 판매월(MONTH(sales_date))로 그룹화한 후 고객 id를 unique하게 세기 위해 DISTINCT 사용.
SELECT YEAR(sales_date) year,
    MONTH(sales_date) month,
    COUNT(DISTINCT s.user_id) purchased_users,
    ROUND(COUNT(DISTINCT s.user_id) / 
          (SELECT COUNT(*)
            FROM user_info u
            WHERE YEAR(joined) = "2021"), 1) purchased_ratio
FROM user_info u
JOIN online_sale s
    ON u.user_id = s.user_id
WHERE YEAR(joined) = "2021"
GROUP BY YEAR(sales_date), MONTH(sales_date)
ORDER BY year, month
profile
자라나라 새싹새싹🌱
post-custom-banner

0개의 댓글