请教一个SQL语句:怎样计算加权平均值(累计平均)?

yyhao 2003-06-27 11:05:02
有这样一个“表A”:
日期    产量    含P(%)
2003-1-1 100 50
2003-2-1 200 60
2003-3-1 300 40
2003-4-1 200 30
2003-5-1 400 40
要想得到某月(如4月)的如下结果:
产量    含P(%)    平均含P(%)
200 30 43.75

说明:“平均含P(%)”的算法是:每个月的“产量”乘以“含P(%)”之和,再除以这几个月的累计产量,即:
((100*50)+(200*60)+(300*40)+(200*30))/(100+200+300+200)=43.75

请问,怎样写这个SQL语句?谢谢!
...全文
3566 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyhao 2003-06-29
  • 打赏
  • 举报
回复
谢谢各位,有不同写法的请继续帮助!
nhjoy 2003-06-28
  • 打赏
  • 举报
回复
select sum(产量*含P(%))/sum(产量) where 条件
nboys 2003-06-28
  • 打赏
  • 举报
回复
select convert(decimal(10,2),sum(产量*含P))/sum(产量) from 表A where datepart(m,日期)=4 and datepart(yy,日期)=2003
nboys 2003-06-28
  • 打赏
  • 举报
回复
select sum(产量*含P(%))/sum(产量) from 表A where datepart(m,日期)=4 and datepart(yy,日期)=2003
caiyunxia 2003-06-28
  • 打赏
  • 举报
回复
select sum(产量*含P(%))*1.0/sum(产量) from a where

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧