Sql server 如何将SUM语句中的多个列转换为SQL中的单个语句?
我的查询中有类似的内容:Sql server 如何将SUM语句中的多个列转换为SQL中的单个语句?,sql-server,Sql Server,我的查询中有类似的内容: SUM(cb.MerchandiseSales + cb.MerchandiseSalesTax + cb.MerchandiseReturns + cb.MerchandiseReturnsTax + cb.OtherSales + cb.OtherSalesTax + cb.GiftCSold + cb.StoreCreditIssued + cb.DepositReceived)
SUM(cb.MerchandiseSales +
cb.MerchandiseSalesTax +
cb.MerchandiseReturns +
cb.MerchandiseReturnsTax +
cb.OtherSales +
cb.OtherSalesTax +
cb.GiftCSold +
cb.StoreCreditIssued +
cb.DepositReceived) AS TotalSales,
以上是我的查询中的一列,我的查询中有许多类似的列?我想做一些类似的事情:
SUM(@totalSales)
其中
@totalSales = cb.MerchandiseSales +
cb.MerchandiseSalesTax +
cb.MerchandiseReturns +
cb.MerchandiseReturnsTax +
cb.OtherSales +
cb.OtherSalesTax +
cb.GiftCSold +
cb.StoreCreditIssued +
cb.DepositReceived
所有都是数字(19,4)
我无法实现这一点,因为我的查询有一个Group by表达式。请告知。分组集- 在T-SQL中,您将有如下内容:
GROUP BY GROUP BY GROUPING SETS(
(col1, col2, etc.) -- columns you using in your GROUP BY now
,() -- grand Total
)
你可以得到很多答案,但你的解决方案将是最快的一个,这是丑陋的,但很快。