sql - SQL Pivot总计行?
问题描述
我让我的枢轴与用户一起工作,并且该用户能够查看不同的帐户。下面是数据透视表的结果
Accounts | Toms
Bank 40
Bank2 50
它的关键代码是......
SELECT * FROM
(SELECT
UserPivot.[parties]
,UserPivot.[Accounts]
,UserPivot.[CurrentAmount]
,UserPivot.[Plus / Negative]
FROM UserPivot) AS BaseData
PIVOT(
SUM(BaseData.[CurrentAmount])
FOR BaseData.[parties]
IN([Toms])
) AS PivotTable
有没有办法计算汤姆斯账户的总数?
谢谢大家的建议!
解决方案
我会使用条件聚合,因此您可以使用GROUPING SETS
:
SELECT UserPivot.Accounts,
SUM(CASE WHEN UserPivot.parties = 'Toms' THEN UserPivot.CurrentAmount
FROM UserPivot
GROUP BY GROUPING SETS ( ( UserPivot.Accounts), () );
推荐阅读
- node.js - 'TypeError: this is undefined' 在使用功能组件中的类成员时发生
- postgresql - ThingsBoard 混合模式
- python - Django CreateView 测试失败
- c# - 以编程方式为相同类型的控件禁用和启用事件
- machine-learning - 将聚类输出拟合到机器学习模型中
- spring - JPARepository 的 save() 方法来更新数据库中的现有实体。但是一旦调用 save() ,它就会删除记录
- php - 批量删除所有帖子类型的 Wordpress 管理列
- interface - 通过 GSM 连接无法上网,可能是接口问题
- asterisk - Asterisk:如何实现出站速率限制(每秒调用次数)
- sql - 检查约束以防止 2 行或更多行的数值为 1