首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不丢失所有行的情况下得到某一列的和?

如何在不丢失所有行的情况下得到某一列的和?
EN

Stack Overflow用户
提问于 2014-12-08 21:05:12
回答 1查看 60关注 0票数 0
代码语言:javascript
复制
CREATE TABLE tmp ( col1 int, col2 int );
INSERT INTO tmp VALUES (1,3), (2,5), (3,7);

SELECT col1, col2, SUM(col2) AS Total FROM tmp; -- ???

SELECT语句给我留下了以下数据集:

col2 1

.=‘5’>.=

是否有一种不引入子查询就允许所有行出现的方法,以便结果如下:

col2 1

.=‘5’>.=

商业、金融、金融等领域。

.=‘5’>.=

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-08 21:31:40

您可以使用交叉连接来避免子查询:

代码语言:javascript
复制
SELECT t1.col1, t1.col2, sum(t2.col2) sum_col2
from tmp t1
cross join tmp t2 
group by 1, 2

请参阅SQL小提琴

请注意,只有在col1和col2的组合是唯一的情况下,这才有效。

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

https://stackoverflow.com/questions/27366883

复制
相关文章

相似问题

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