0

我正在努力寻找一种方法来在 SQL 中的一些返回值之间进行百分比分割。

在此处输入图像描述

例如,使用上面的值,我需要先将它们加在一起得到一个总数,然后找出它们各自占总数的百分比。

我从我创建的名为 #Temp1 的临时表中获取这些值

该脚本应与 SQL Server 2005 兼容

我一直在互联网上搜索,找不到适合这种特殊情况的任何东西。

谢谢!

4

1 回答 1

1

如果您使用的是最新版本的 SQL Server,则可以使用以下over子句:

select  AssetValue
,       100.0 * AssetValue / sum(AssetValue) over () as Percentage
from    #Temp1

对于旧版本的 SQL Server:

select  AssetValue
,       100.0 * AssetValue / 
        (
        select  sum(AssetValue)
        from    #Temp1
        ) as Percentage
from    #Temp1

SQL Fiddle 的示例。

于 2013-05-28T09:38:33.940 回答