728x90
https://school.programmers.co.kr/learn/courses/30/lessons/131534
- 풀이
- 2021년 가입한 사람 수
- SELECT COUNT(*) FROM USER_INFO WHERE YEAR(JOINED)=2021
- 2021년에 가입한 사람 중 구매한 사람 수
- COUNT(DISTINCT USER_ID)
- COUNT(*)을 사용할 경우 여러번 구매한 사람이 중복 카운트 됨
- 소수 2번째자리에서 반올림
- ROUNT(반올림하고 싶은 숫자,1)
- 2번째 인자 생략시 첫번째자리에서 반올림
- 2021년 가입한 사람 수
SELECT year(sales_date) as year,month(sales_date) as month, count(distinct user_id) as puchased_users,
# 구매 비율
round(count(distinct user_id)/(select count(*) from user_info where year(joined)=2021),1) as puchased_ratio
from online_sale
where user_id in (select user_id from user_info where year(joined) = 2021)
group by year(sales_date),month(sales_date)
order by year,month
728x90
반응형
'TIL - 프로그래밍 > SQL' 카테고리의 다른 글
[SQL] DML 공부 (0) | 2023.07.05 |
---|---|
[SQL] Chapter 1. SQL을 활용한 분석 (0) | 2023.07.04 |
[프로그래머스] 자동차 대여 기록 별 대여 금액 구하기 - MySQL (0) | 2023.02.28 |
[230228] MySQL 조건문 (IF문 / 중첩 IF문 / CASE문) (0) | 2023.02.28 |
[230224] SQL - 특정 문자를 포함하는 LIKE, (0) | 2023.02.24 |
댓글