sql-server - 按 col 求和和分组时重复行
问题描述
如何按部门为每个帐户创建单行,我的意思是总金额?
SELECT Account
, AccountName,
Department,
Company,
isNull(VendorCode,'') as VendorCode,
isNull(UPPER(VendorName),'') as VendorName,
isNull(ProjectCode,'') as ProjectCode,
isNull(UPPER(ProjectName),'') as ProjectName,
FiscalYear,
FiscalPeriod,
Sum(Amount)as Amount
FROM [GL]
group by Account, AccountName, Department, Company, VendorCode, VendorName, ProjectCode, ProjectName, FiscalYear, FiscalPeriod
order by AccountName, Department, Company asc
--group by X.Account, x.AccountName, Department, Company, x.VendorCode, x.VendorName, x.ProjectCode, x.ProjectName, x.FiscalYear, x.FiscalPeriod, x.Amount
去
解决方案
根本原因是您选择了冗余属性,例如Company
, VendorCode
,VendorName
等。
结果,您可以看到相同的Account
9999 但不同Company
所以如果我在你的鞋子里,我会按我需要的属性分组
SELECT AccountName, Department, SUM(Amount) Amount
FROM [GL]
GROUP BY AccountName, Department
ORDER BY AccountName, Department
推荐阅读
- ios - 多个命令在新 Firestore 版本中产生 gRPCCertificates.bundle 错误
- sql - 更多日期格式转换SQL
- android - Framework 7 V2:如何在 android 设备后退按钮中关闭弹出覆盖
- c# - DataGridView中的编辑控件移动到另一个单元格时如何接收事件?
- canvas - 当我使用 canvasPattern 作为 pointBackgroundColor 时,图像看起来很模糊
- android - 在android中的活动和服务之间共享类
- java - 使用 Step Builder 模式创建一个复杂对象,该对象包含一个实例变量,该实例变量是一个列表
- angular - 接口上不存在属性
- java - 使用 Apache POI 将多个图像插入 Excel 时,第一个图像被删除
- string - str::contains 适用于引用但不适用于实际值