[SQL] 타임어택 : Day 06~10
프로그래머스, LeetCode, HackerRank 문제 풀이 스터디
Jun 16, 2023
Problem
Day | Date | No. | Problem | Time | Redo |
06 | 2023-06-05 | 029 | ㅤ | ㅤ | |
ㅤ | ㅤ | 030 | ㅤ | ㅤ | |
ㅤ | ㅤ | 031 | ㅤ | ㅤ | |
ㅤ | ㅤ | 032 | ㅤ | ㅤ | |
ㅤ | ㅤ | 033 | ㅤ | ㅤ | |
ㅤ | ㅤ | 034 | ㅤ | ㅤ | |
07 | 2023-06-07 | 035 | ㅤ | ㅤ | |
ㅤ | ㅤ | 036 | ㅤ | ㅤ | |
ㅤ | ㅤ | 037 | ㅤ | ㅤ | |
ㅤ | ㅤ | 038 | ㅤ | ㅤ | |
ㅤ | ㅤ | 039 | ㅤ | ㅤ | |
ㅤ | ㅤ | 040 | ㅤ | ㅤ | |
08 | 2023-06-12 | 041 | 날짜별 매출 집계하기 | ㅤ | ㅤ |
ㅤ | ㅤ | 042 | 이동평균을 사용한 날짜 추이 보기 | ㅤ | ㅤ |
ㅤ | ㅤ | 043 | 당월 매출 누계 구하기 | ㅤ | ㅤ |
ㅤ | ㅤ | 044 | ㅤ | ㅤ | |
ㅤ | ㅤ | 045 | ㅤ | ㅤ | |
ㅤ | ㅤ | 046 | ㅤ | ㅤ | |
09 | 2023-06-14 | 047 | Z차트로 업계 추이 확인하기 | ㅤ | ㅤ |
ㅤ | ㅤ | 048 | 매출을 파악할 때 중요 포인트 | ㅤ | ㅤ |
ㅤ | ㅤ | 049 | ㅤ | ㅤ | |
ㅤ | ㅤ | 050 | ㅤ | ㅤ | |
ㅤ | ㅤ | 051 | ㅤ | ㅤ | |
ㅤ | ㅤ | 052 | ㅤ | ㅤ | |
10 | 2023-06-16 | 053 | ㅤ | ㅤ | |
ㅤ | ㅤ | 054 | ㅤ | ㅤ | |
ㅤ | ㅤ | 055 | ㅤ | ㅤ | |
ㅤ | ㅤ | 056 | ㅤ | ㅤ | |
ㅤ | ㅤ | 057 | ㅤ | ㅤ | |
ㅤ | ㅤ | 058 | ㅤ | ㅤ |
Solution
Day 06
Day 07
Day 08
Q. 시계열 매출 구하기 1 : 날짜별 매출 집계하기
- 데이터셋 : solve sql playground UK E-commerce Orders 데이터셋 중
orders, order_items
테이블을 order_id 기준으로 조인하여 이용
- 문제 : 각 일별 주문 수량, 매출액, 평균 매출액을 집계하세요.
dt | purchase_count | total_amount | avg_amount |
2014-01-01 | 2 | 24516 | 12258.00 |
2014-01-02 | 2 | 36059 | 18024.50 |
2014-01-03 | 3 | 18591 | 19385.22 |
… | ㅤ | ㅤ | ㅤ |
Q. 시계열 매출 구하기 2 : 이동평균을 사용한 날짜 추이 보기
- 이동평균은 시계열 데이터에서 일정 기간동안의 데이터를 평균화한 값을 구하는 방법입니다. 예를 들어, 7일 이동평균을 구한다면 7일간의 데이터를 모두 더한 뒤 7로 나눠서 평균을 구합니다. 이렇게 구한 값은 그래프를 그리면 노이즈가 많은 시계열 데이터에서 추세를 파악하는 데 도움이 됩니다.
- 데이터셋 : solve sql playground UK E-commerce Orders 데이터셋 중
orders, order_items
테이블을 order_id 기준으로 조인하여 이용
- 문제 : 각 일별 평균 매출액, 최근 최대 7일간의 평균 매출액, 최근 7일 동안 평균 매출액을 확실하게 계산한 주문액을 구해주세요.
dt | total_amount | seven_day_avg_amount | seven_day_avg_amount_strict |
2014-01-01 | 24516 | 24516.00 | ㅤ |
2014-01-02 | 36049 | 30282.50 | ㅤ |
2014-01-03 | 53029 | 37864.66 | ㅤ |
2014-01-04 | 29299 | 35723.25 | ㅤ |
2014-01-05 | 48256 | 38229.80 | ㅤ |
2014-01-06 | 29440 | 36764.83 | ㅤ |
2014-01-07 | 47679 | 38324.00 | 38324.00 |
2014-01-08 | 19760 | 37644.57 | 37644.57 |
2014-01-09 | 22944 | 35772.42 | 35772.42 |
… | ㅤ | ㅤ | ㅤ |
Q. 시계열 매출 구하기 3 : 당월 매출 누계 구하기
- 데이터셋 : solve sql playground UK E-commerce Orders 데이터셋 중
orders, order_items
테이블을 order_id 기준으로 조인하여 이용
- 문제 : 각 일마다 년/월을 추출하고, 일별 매출과 일별 매출 누계 열을 구해주세요.
dt | year_month | total_amount | agg_amount |
2014-01-01 | 2014-01 | 24516 | 24516 |
2014-01-02 | 2014-01 | 36049 | 60565 |
2014-01-03 | 2014-01 | 53029 | 113694 |
2014-01-04 | 2014-01 | 29299 | 142893 |
2014-01-05 | 2014-01 | 48256 | 191149 |
2014-01-06 | 2014-01 | 29440 | 220589 |
2014-01-07 | 2014-01 | 47679 | 268268 |
2014-01-08 | 2014-01 | 19760 | 288028 |
2014-01-09 | 2014-01 | 22944 | 310972 |
… | ㅤ | ㅤ | ㅤ |
시계열 매출 구하기 1 : 날짜별 매출 집계하기
시계열 매출 구하기 2 : 이동평균을 사용한 날짜 추이 보기
시계열 매출 구하기 3 : 당월 매출 누계 구하기
Day 09
Q. 시계열 매출 구하기 4 : Z차트로 업계 추이 확인하기
- 데이터셋 : solve sql playground UK E-commerce Orders 데이터셋 중
orders, order_items
테이블을 order_id 기준으로 조인하여 이용
- 문제 : 년/월 행을 만들고 월차 매출, 매출누계, 이동년계를 구해주세요.
- 월차매출 : 해당 달의 매출
- 매출누계 : 해당 월의 매출에 이전월까지의 매출 누계 합한 값
- 이동년계 : 해당 월의 매출에 과거 11개월의 매출을 합한 값
year_month | amount | agg_amount | year_avg_amount |
2015-01 | 1178122 | 1178122 | 13748528 |
2015-02 | 1015284 | 2193406 | 13695593 |
2015-03 | 1165686 | 3359012 | 13689762 |
2015-04 | 1128273 | 4487285 | 13692506 |
… | ㅤ | ㅤ | ㅤ |
Q. 시계열 매출 구하기 5 : 매출을 파악할 때 중요 포인트
- 데이터셋 : solve sql playground UK E-commerce Orders 데이터셋 중
orders, order_items
테이블을 order_id 기준으로 조인하여 이용
- 문제 : 년/월 행을 만들고 주문 건수, 평균 구매액, 매출액, 누계 매출액, 작년 매출액, 작년비 (작년 대비 성장률)을 구해주세요.
year_month | orders | avg_amount | monthly | agg_amount | last_year | rate |
2014-01 | 77 | 15126.6363 | 1164751 | 1164751 | ㅤ | ㅤ |
2014-02 | 69 | 15481.4347 | 1068219 | 2232970 | ㅤ | ㅤ |
2014-03 | 78 | 15018;4230 | 1171437 | 3404407 | ㅤ | ㅤ |
… | ㅤ | ㅤ | ㅤ | ㅤ | ㅤ | ㅤ |
2014-12 | 78 | 15304.5256 | 1193753 | 13735157 | ㅤ | ㅤ |
2015-01 | 75 | 15708.2933 | 1178122 | 1178122 | 1164751 | 101.14 |
2015-02 | 68 | 14930.6470 | 1015284 | 2193406 | 1068219 | 95.04 |
2015-03 | 75 | 15541.4133 | 1165686 | 3359012 | 1171437 | 99.50 |
… | ㅤ | ㅤ | ㅤ | ㅤ | ㅤ | ㅤ |
Z차트로 업계 추이 확인하기
매출을 파악할 때 중요 포인트
Share article