如何计算表中特定行数的组小计

时间:2018-07-24 11:51:33

标签: sql sql-server

我在这里真的学到很多东西。感谢所有的支持。但是,我还有另一个挑战。

我想为特定月份内的一组行“ Div”计算加权指数,如下所示:

Wght   tMonth tYear Div  Indices

37.5     01   2015   01    157.27
2.7      01   2015   01    127.36
58.7     01   2015   01    142.48
     DivIndex              146.11
34.9     01   2015   02    133.33
6.7      01   2015   02    136.49
52.4     01   2015   02    131.34
     DivIndex              124.43
43.9     02   2015   01    157.18
44.8     02   2015   01    127.42
     DivIndex              126.09
58.7     02   2015   03    145.67
7.5      02   2015   03    134.70
6.7      02   2015   03    137.24
     DivIndex              104.72
54.0     03   2015   05    160.61
     DivIndex               86.73
48.1     03   2015   04    127.49
58.7     03   2015   04    148.62
     DivIndex              148.58

我使用Excel来计算'DivIndex',而这正是我想在Sql Server 2008R2中提出的。

在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您可以按照以下方式进行计算:

select tyear, tmonth,
       sum(weight * dev_indices) / sum(weight)
from t
group by tyear, tmonth
order by tyear, tmonth;