【发布时间】:2016-03-02 19:39:53
【问题描述】:
我有如下所示的数据:
name SAL1 SAL2 SAL3
A 10 20 30
B 11 21 31
C 12 22 32
D 13 23 33
我试图获得一个额外的计算列,即 10 / 25 *100
[ SAL1 of A / Sum( TOP 2 Sal1 ORDER BY Sal1 DESC ) ]
而不是考虑分母中所有记录的总和,我只需要考虑sal desc的前2个sal订单
分别用于其余行。 随后与其他列。
name SAL_calculated
A 40
B 44
C 48
D 52
对名称列按 Asc 排序,对其余列按 Desc 排序
【问题讨论】:
-
您使用的 SQL Server 版本是什么?
-
这是 SQL Server 2012
-
我不需要考虑分母中所有记录的总和,我只需要考虑前 2 个按 sal desc 排序的 sal 订单,即 10 / 25 *100 NOT 10 /46 *100 抱歉更改,即 A = 40 不是 21.7
-
已经更新了我的答案。请尝试
标签: sql sql-server