加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 与SQL服务器总结RollUP – 但最后一个摘要?

发布时间:2020-12-12 16:21:04 所属栏目:MsSql教程 来源:网络整理
导读:我有这个查询: DECLARE @t TABLE(NAME NVARCHAR(MAX),datee date,val money)insert INTO @t SELECT 'a','2012-01-02',100insert INTO @t SELECT 'a','2012-01-03','2012-01-05',100insert INTO @t SELECT 'b','2012-01-06',200insert INTO @t SELECT 'b','20
我有这个查询:
DECLARE @t TABLE(NAME NVARCHAR(MAX),datee date,val money)

insert INTO @t SELECT 'a','2012-01-02',100
insert INTO @t SELECT 'a','2012-01-03','2012-01-05',100
insert INTO @t SELECT 'b','2012-01-06',200
insert INTO @t SELECT 'b','2012-01-07',200
insert INTO @t SELECT 'd',400
insert INTO @t SELECT 'e','2012-01-09',500
insert INTO @t SELECT 'f','2012-01-12',600

SELECT  Name,datee,SUM (val) 
from @t GROUP BY NAME,datee

目前的结果是:

但是我需要在最后添加总和.
所以我试着用汇总:

SELECT  Name,SUM (val) 
    from @t GROUP BY NAME,datee  with ROLLUP

但是我只需要最后总和总线.我不需要报告总额

那么如何才能得到欲望的结果?

(我不能更改group by子句,因为其他人也需要它,我只是想在最后添加和/不使用汇总).

sql online is here

解决方法

可以使用GROUPING SETS,尝试这样:
SELECT  Name,SUM (val) 
FROM    @t 
GROUP BY 
        GROUPING SETS((NAME,datee),())

SQL Fiddle

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读