如何使用sql获取分区数据的平均值?
我有这张桌子:如何使用sql获取分区数据的平均值?,sql,postgresql,Sql,Postgresql,我有这张桌子: type id qty hour date a manual 1 2 2020-05-06 a manual 2 3 2020-05-06 a manual 4 6 2020–05-06 b
type id qty hour date
a manual 1 2 2020-05-06
a manual 2 3 2020-05-06
a manual 4 6 2020–05-06
b manual 2 4 2020-05-03
b manual 1 2 2020-05-03
b manual 4 5 2020-05-03
我需要通过除以数量和小时来获得生产率,我的查询是:
select type, date, qty/hour as prod,
from table1
where id = ‘manual’
group by type, date
通过上述查询,我得到:
type id qty hour date prod
a manual 1 2 2020-05-06 0.5
a manual 2 3 2020-05-06 0.67
a manual 4 6 2020–05-06 0.67
b manual 2 4 2020-05-03 0.5
b manual 1 2 2020-05-03 0.5
b manual 4 5 2020-05-03 0.8
接下来,我需要得到基于类型和日期的平均生产率,以及预期结果:
type date avg
a 2020-05-06 0.613
b 2020-05-03 0.6
如何编写查询以获得预期结果?如果我理解正确,您需要:
选择类型、日期、平均(数量/小时)作为产品,
来自表1
其中id='manual'
按类型、日期分组
我不知道您是如何生成当前的中间结果的,但是根据您的示例输入数据,按类型和日期分组必须生成一个仅包含2条记录的结果集