SQL - 总行的百分比

oje*_*jek 1 sql t-sql sql-server

我有这个问题:

SELECT 
Count(*) as Cnt, 
Category
FROM [MyDb].[dbo].[MyTable]
group by Category
order by Cnt
Run Code Online (Sandbox Code Playgroud)

它给了我每个行数Category.现在我想添加一个可以给我的第三列Cnt / (total rows in this table).

我怎样才能做到这一点?

Gor*_*off 6

作为注释,您实际上可以使用窗口函数通过一个查询执行此操作:

SELECT Count(*) as Cnt, Category,
       cast(Count(*) as float) / sum(count(*)) over () as ThirdColumn
FROM [MyDb].[dbo].[MyTable]
group by Category
order by Cnt
Run Code Online (Sandbox Code Playgroud)