首页
学习
活动
专区
圈层
工具
发布

T-SQL总和
EN

Stack Overflow用户
提问于 2012-10-26 04:45:28
回答 1查看 3K关注 0票数 0

下面我有一个T-SQL查询,它返回购买的商品数量,减去折扣和总数-按购买的月/年分组。如何更新查询以返回总计行,以便将合计列中的金额相加?能够将所有行相加是很好的,但我的主要项目是我需要能够获得总计。谢谢。

代码语言:javascript
复制
    Select DATENAME(month, [OrderDate]) + ' ' + CAST(YEAR(OrderDate) AS CHAR(4)) 
    AS [Month],
    SUM(Amount) AS [Amount],
    SUM(Discount1) AS [Discount 1],
    SUM(Discount2) AS [Discount 2],
    SUM(Amount - Discount1 - Discount2) AS [Total]
    From 
    Orders
    JOIN Customer on orders.cust_ky=customer.cust_ky
    GROUP BY DATENAME(month, [OrderDate]) + ' ' + CAST(YEAR(OrderDate) AS CHAR(4))
    ORDER BY MAX(OrderDate)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-26 04:49:37

根据您的sql-server版本,您可能能够实现rollup函数(SQL-Server 2005+):

代码语言:javascript
复制
Select DATENAME(month, [OrderDate]) + ' ' + CAST(YEAR(OrderDate) AS CHAR(4)) AS [Month],
    SUM(Amount) AS [Amount],
    SUM(Discount1) AS [Discount 1],
    SUM(Discount2) AS [Discount 2],
    SUM(Amount - Discount1 - Discount2) AS [Total]
From Orders
JOIN Customer 
    on orders.cust_ky=customer.cust_ky
GROUP BY ROLLUP(DATENAME(month, [OrderDate]) + ' ' + CAST(YEAR(OrderDate) AS CHAR(4)))
ORDER BY MAX(OrderDate)

或者,您可以使用类似于下面的UNION ALL,其中第二个查询在没有GROUP BY的情况下获得总和

代码语言:javascript
复制
Select DATENAME(month, [OrderDate]) + ' ' + CAST(YEAR(OrderDate) AS CHAR(4)) AS [Month],
    SUM(Amount) AS [Amount],
    SUM(Discount1) AS [Discount 1],
    SUM(Discount2) AS [Discount 2],
    SUM(Amount - Discount1 - Discount2) AS [Total]
From Orders
JOIN Customer 
    on orders.cust_ky=customer.cust_ky
GROUP BY DATENAME(month, [OrderDate]) + ' ' + CAST(YEAR(OrderDate) AS CHAR(4))
union all
Select 'Total',
    SUM(Amount) AS [Amount],
    SUM(Discount1) AS [Discount 1],
    SUM(Discount2) AS [Discount 2],
    SUM(Amount - Discount1 - Discount2) AS [Total]
From Orders
JOIN Customer 
    on orders.cust_ky=customer.cust_ky
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13076962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档