说我有一张叫做人口普查的表格,具有以下信息:
COUNTRY PROVINCE CITY POPULATION ============================================== USA California Sacramento 1234 USA California SanFran 4321 USA Texas Houston 1111 USA Texas Dallas 2222 Canada Ontario ottawa 3333 Canada Manitoba Winnipeg 4444
我正在国家/省级建立一份报告,其中给出了以下几点:
SELECT country,province,SUM(population) FROM census GROUP BY country,province; COUNTRY PROVINCE SUM(POPULATION) ======================================= USA California 5555 USA Texas 3333 Canada Ontario 3333 Canada Manitoba 4444
我希望在报告中包含一个“总体摘要”行,以便最终的结果如下所示:
COUNTRY PROVINCE SUM(POPULATION) ======================================= USA California 5555 USA Texas 3333 Canada Ontario 3333 Canada Manitoba 4444 TOTAL 16665
我熟悉ROLLUPs,但我似乎找不到一个组合,让我得到我正在寻找的东西.使用GROUP BY ROLLUP(country,province)包括我想要的总值,但它也包含大量我不关心的额外值. GROUP BY ROLLUP(country),省也是如此
如何做出“总”记录?
我正在使用UNION ALL计算它,并使用不同的GROUP BY重复90%的第一个查询,但是由于第一个查询不是平凡的,所以结果是缓慢而丑的代码.
这是一个sql小提琴,想要玩这个:http://sqlfiddle.com/#!4/12ad9/5
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。