有如下的表test:
name count
张三 10
李四 4
.
.
.
.
要实现这样的查询:统计出每个NAME所占的COUNT总数比例.
我用的方法是:
declare @allcount int
set @allcount = (select sum(count) from test
select name,count/@allcount as percent from test
现在想用一个查询语句实现以上功能,可以吗?
...全文
2025打赏收藏
如何实现比例计算
有如下的表test: name count 张三 10 李四 4 . . . . 要实现这样的查询:统计出每个NAME所占的COUNT总数比例. 我用的方法是: declare @allcount int set @allcount = (select sum(count) from test select name,count/@allcount as percent from test 现在想用一个查询语句实现以上功能,可以吗?
--你还可以用连接来做
--测试数据与'依帆'相同
select t1.*, percents=1.0*counts/sums
from (select name, counts=sum(count) from test group by name)t1
, (select sums=sum(count)from test)t2