sql - 在 SQL Server 中使用 GroupBy() 而不是分组记录计数时如何获取表中所有行的计数
问题描述
当我在我的选择语句中使用 Group by 和 Count() 时,它正在对记录进行分组并返回每个组计数。
我想用 Group By 获得所有表格记录的总数。我怎么得到那个。
我需要类似于下面的结果
GroupCount Dept GrandTotalOfAllRows
2 CEC 6
1 ECE 6
3 CSE 6
解决方案
您通常会使用窗口函数:逻辑是对sum()
整个数据集进行聚合计数的窗口。
那看起来像:
select
count(*) GroupCount,
dept,
sum(count(*)) over () GrandTotalOfAllRows
from mytable
group by dept
推荐阅读
- php - laravel 在所有视图中共享变量作为参考
- response - 为什么响应在浏览器中被 pre 标签包裹
- if-statement - 标记值是否每月出现一次以上 - 按 DAX PowerBI 中的 if 语句分组
- ios - 如何更改 UIText 视图垂直滚动条指示器的颜色?
- c++ - 块字符:文本框 cpp
- android - ACTION_CANCEL 不适用于非滑动 ViewPager?
- html - HTML 中的 img 元素:file 属性和 src 属性的行为不同
- javascript - 什么是索引之间连接的优雅方式
- javascript - 在 html 按钮中调用 javascript 函数时出错
- javascript - 我怎么知道是什么触发了变化?