T-SQL-包括单个查询中的计数总和(*)

Gar*_*ary 4 sql t-sql sql-server-2005

使用表i和字段date_entered和代码,我写了一个查询来列出每年代码='12A'的计数.

select distinct year(date_entered) as Yr, count(*) as Cnt
from i
where code = '12A'
group by year(date_entered)
order by Yr desc
Run Code Online (Sandbox Code Playgroud)

这会产生:

Yr   |    Cnt
2011   |  780
2010   |  3489
2009   |  3256
...
Run Code Online (Sandbox Code Playgroud)

我想在结果集中包含Cnt变量的总和.我知道如何使用单独的查询查找总和,但我想计算原始查询中的总和.

Joe*_*lli 12

WITH ROLLUPGROUP BY子句之后添加到查询中,您将获得一个包含最终总计的NULL Yr的额外行.

select year(date_entered) as Yr, count(*) as Cnt
from i
where code = '12A'
group by year(date_entered)
with rollup
order by Yr desc
Run Code Online (Sandbox Code Playgroud)