sql - 用于计算记录数的 SQL 查询
问题描述
嗨,我在报告状态数据示例中显示记录如下
NAME STATE
BOB NSW
PETER ACT
SAM NSW
BOY VIC
而且我需要按状态计算每条记录以显示在 SSRS 报告中。我正在尝试使用行号和分区依据。但它显示的是 1、2、3、4。这就是应该的。任何其他建议和预期结果应适用于 NSW =2 VIC=1 和 ACT =1
解决方案
你可以这样做
CREATE TABLE T
([NAME] varchar(5), [STATE] varchar(3))
;
INSERT INTO T
([NAME], [STATE])
VALUES
('BOB', 'NSW'),
('PETER', 'ACT'),
('SAM', 'NSW'),
('BOY', 'VIC')
;
SELECT *, (SELECT COUNT(State) FROM T WHERE State = T1.State) StateCount
FROM T T1;
回报:
+-------+-------+------------+
| NAME | STATE | StateCount |
+-------+-------+------------+
| BOB | NSW | 2 |
| PETER | ACT | 1 |
| SAM | NSW | 2 |
| BOY | VIC | 1 |
+-------+-------+------------+
推荐阅读
- php - PHP preg_match_all 在比赛之间获取信息
- html - 将 flexbox 项目推送到桌面视图的右侧
- javascript - 警告:包装外部组件时的未知道具”
- dialogflow-es - Dialogflow V2 - 自定义上下文
- python - 这种排序有名称吗?什么样的数据对排序有效?
- html - 使用填充与高度(使用vh)与最小高度定义网页中部分高度的最佳实践是什么
- java - 与 AWS Dynamodb 集成的微服务应用程序中的 BeanCreationException
- javascript - 有什么方法可以读取我们包含在 img 标签的 src 中的脚本/图像的响应标头
- android - 调用另一个片段的视图寻呼机索引上的片段的 onActivityResult
- php - PDO 多个查询工作,除了 SELECT 查询