我不知道如何用最好的语言来表达这一点,但下面是我的数据,我正试图建立一个查询,将每一列输出为现金、计划支付、政府三项的百分比
列数据:
输出如下:
我试过这个
select str_nbr ,(sum(cast(planpay as float) / (sum(cast (planpay as float) + sum (cast (cash as float) + sum (cast (govt as float)))
from Insurance where str_nbr in ( '15308') group by str_nbr
2条答案
按热度按时间ltqd579y1#
你可以用除法。如果不想重复计算,请使用
apply
:请注意,SQLServer执行整数除法。如果值是整数
1 / 2
是0
而不是0.5
. 这个* 100.0
解决了这个问题。xmjla07d2#
只需执行与excel中相同的逻辑,但要使用t-sql。避免重复使用cte