我的产品购物退货数据存储如下:
item_id | store_id | rtrn_tmst |
---|---|---|
1003632052 | 571 | 2019-01-16 07:00:06 UTC |
其中 rtrn_tmst 表示商品在商店退回的时间。
我如何计算:
1)给定时间段内(每天、每周、每月、每年)每家商店每天退货的数量?
store_id | count_of_items_returned | 天 |
---|---|---|
571 | 128 | 2019-01-16 |
7 | 502 | 2020-02-09 |
571 | 77 | 2019-01-16 |
store_id | count_of_items_returned | 月 |
---|---|---|
571 | 10056 | 2019-01 |
7 | 82000 | 2019-01 |
571 | 2015 | 2020-01 |
store_id | count_of_items_returned | 年 |
---|---|---|
571 | 11000000 | 2019 |
7 | 500000 | 2019 |
571 | 22000000 | 2020 |
1)给定时间段内(每天、每周、每月)每家商店平均每天退货数量?
store_id | avg_no_items_returned | 天 |
---|---|---|
571 | 111 | 01-16 |
7 | 484 | 02-09 |
571 | 43 | 03-11 |
store_id | avg_no_items_returned | 月 |
---|---|---|
571 | 10000 | 01 |
7 | 90000 | 01 |
571 | 1080 | 02 |
2) 2 月、12 月、1 月与 3 月至 11 月相比,每家商店每天退货的商品数量?
3)退货总数最多的那一天?
count_of_items_returned | 天 |
---|---|
5亿 | 2021-11-24 |
4)一天退货次数最多的那一天&店铺?
store_id | count_of_items_returned | 天 |
---|---|---|
1169 | 500000 | 2022-01-24 |
5) 总体(所有商店)退货数量是多少?每家商店如何比较(更高或更低以及这个平均值是多少?)
这是我尝试开始但没有用的:
select store_id, AVG(COUNT DISTINCT item_id)
FROM sales
GROUP BY store_id
如何在 SQL/Big Query 中计算平均数?如何从时间戳中提取日期范围?如何计算移动平均值(每家商店仅在过去 30 天的平均值?)如何比较同比变化?
(我是 SQL/Big Query 的新手并且很困惑,所以任何帮助都会很棒!)
谢谢!