SQL 计算列值的总和并在所有行上重复此值 [英] SQL to calculate sum of column values and repeat this value over all rows
本文介绍了SQL 计算列值的总和并在所有行上重复此值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我有一张这样的桌子:
Let's say I have a table like this:
COL1 COL2
ABC 1
DEF 2
GHI 3
我想在新列 COL3 中包含 COL2 的总和:
And I want to have the sum of COL2 in a new column COL3:
COL1 COL2 COL3
ABC 1 6
DEF 2 6
GHI 3 6
所以取一个简单的总和是行不通的,因为它只会返回 1 个值,而我希望该值在所有行上重复.
So taking a simple sum won't work because it will return only 1 value, whereas I want the value to be repeated over all rows.
推荐答案
试试这个:
SELECT *
,(SELECT SUM(Col2) FROM Your_Table) Col3
FROM Your_Table
在 SQL Server 中试试这个:
Try this in SQL Server:
SELECT *
,SUM(Col2) OVER(ORDER BY(SELECT NULL)) Col3
FROM Your_Table
这篇关于SQL 计算列值的总和并在所有行上重复此值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文