【发布时间】:2021-12-27 07:32:05
【问题描述】:
我有一个数据集如下:
date store employee products sales
20210101 a ben 5 laptop
20210101 a ben 10 monitor
20210201 b tim 15 laptop
20210301 b tim 10 tablet
20210301 a ann 30 monitor
我想做的是计算员工每分钟销售多少产品的比率。每个工作日每位员工有 6 小时轮班。例如:ben 在 2021 年 1 月 1 日的比率为 (5+10)/(6*60) = 0.04。
我想创建一个动态计算,因此如果我们选择store a,它会显示所有员工及其班次的已售产品比率。例如:商店a总共有一个比率:(5+10+30) / (6*60*2) = 0.06
如果我们选择笔记本电脑,它的比例应该是:(5+10+30) / (6*60*2) = 0.06
这是我尝试过的查询:
(SUM('products') OVER (PARTITION BY 'date', 'store', 'employee', 'sales')) / (6*60)
但是,这种计算不是动态的,我认为我遗漏了一些东西。如果有人能给我建议,我将不胜感激。
【问题讨论】:
-
我有一个如下的数据集 最好以 CREATE TABLE + INSERT INTO 的形式提供。 我想为显示的示例数据提供所需的输出。
标签: mysql sql window-functions