假设我有一个看起来像这样的 table :
cns_amt ---- cusip_nbr
-3000 -------------------- 00162Q205
4000 -------------------- 00162Q205
6000 -------------------- 00162Q205
8000 -------------------- 00162Q205
10000-------------------- 33733B100
-2900 -------------------- 33733B100
1000-------------------- 33733B100
8000 -------------------- 33733B100
7000-------------------- 464286178
-1200 -------------------- 464286178
1000-------------------- 464286178
1000-------------------- 464286178
我怎样才能得到结果:
total_amt ---- cusip_nbr
21000------------------------00162Q205
21900------------------------33733B100
10200------------------------4642861
基本上,我想对每个不同 cusip_nbr 的绝对值求和,并返回绘制每个 cusip_nbr 及其各自绝对值总和的结果。 (这里只显示了三个不同的 cusip_nbr ,但我有数百个,每个都有一个需要求和的 cns_amt )
最佳答案
可以使用ABS()
获取绝对值,SUM()
:
SELECT cusip_nbr, SUM(ABS(cns_amt)) 'total_amt'
FROM Table
GROUP BY cusip_nbr
演示:SQL Fiddle
关于SQL绝对值求和及迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17708406/