首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Server:汇总

Server:汇总
EN

Stack Overflow用户
提问于 2013-11-01 22:38:57
回答 1查看 6.9K关注 0票数 2

在server中使用ROLLUP时,如何获得详细行之上的小计行?

这就是使用ROLLUP时通常会得到的结果。

代码语言:javascript
复制
Group                Name                 Total Sales
----------------     ---------------      ------------
Europe               France                74569.00
Europe               Germany               59456.00
Europe               United Kingdom        78327.00
Europe               NULL                 212352.00        << sub total row for Europe appears **after** all the individual rows for Europe.
North America        Northwest            208774.00
North America        Southeast            145477.00
North America        Southwest            164232.00
North America        NULL                 518483.00
Pacific              Australia             93403.00
Pacific              NULL                  93403.00

这是预期的结果集:

代码语言:javascript
复制
Group                Name                 Total Sales
----------------     ---------------      ------------
Europe               NULL                 212352.00        << sub total row for Europe needs to appear **before** the individual rows for Europe.
Europe               France                74569.00
Europe               Germany               59456.00
Europe               United Kingdom        78327.00
North America        NULL                 518483.00
North America        Northwest            208774.00
North America        Southeast            145477.00
North America        Southwest            164232.00
Pacific              NULL                  93403.00
Pacific              Australia             93403.00

使用的查询:

代码语言:javascript
复制
SELECT      [Group], [Name], SUM([SalesYTD]) AS 'Total Sales'
FROM        #TempTable
GROUP BY    [Group], [Name] WITH ROLLUP 

有什么办法可以得到这个输出吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-01 22:56:23

你没有明确规定结果,所以当你说这是你通常会得到的.欧洲的小排行出现在欧洲的所有个别行之后,你只是运气好而已。

尝试排序您的结果集:

代码语言:javascript
复制
SELECT      [Group], [Name], SUM([SalesYTD]) AS 'Total Sales'
FROM        #TempTable
GROUP BY    [Group], [Name] WITH ROLLUP 
ORDER BY    [Group], [Name]

虽然也尝试过 as well

不符合ISO标准的语法 ..。 卷起 此功能将在Microsoft Server的未来版本中删除。避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19736530

复制
相关文章

相似问题

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