SQL Server中按银行和客户代码汇总值的高效写法咨询
高效实现按银行和客户代码汇总总值的SQL方案
直接使用GROUP BY分组搭配聚合函数就能简洁解决这个需求,完全不需要重复编写CASE语句,这也是SQL分组汇总的标准写法,在SQL Server中执行效率也更优。
示例代码
假设你的表名为bank_data,对应的SQL语句如下:
SELECT Bank, Customer_Code, SUM(Value) AS Total_Value FROM bank_data GROUP BY Bank, Customer_Code;
说明
GROUP BY Bank, Customer_Code会将数据按银行和客户代码的组合进行分组,确保每个唯一的银行+客户代码组合对应一组数据SUM(Value)直接计算每组内的Value总和,得到该客户在对应银行的总值- 这种写法比重复的CASE语句更简洁,同时SQL Server的查询优化器会对GROUP BY操作做原生优化,执行效率远高于手动用CASE分支处理分组逻辑
内容的提问来源于stack exchange,提问作者Ale
相关产品推荐
相关产品推荐

