可能重复: SQL - Add up all row-values of one column in a singletable
这可能听起来很简单,但我无法找到有效的答案。
我在表格中有一个名为'timeId''talktime''holdtime'和'call count'
的列此表中有200多行,每行都有一个呼叫计数。例如
TimeId talktime holdtime CallCount
1 20 40 3
2 105 9 6
3 433 43 12
4 403 44 15
5 199 85 22
如何运行查询以将所有值添加到通话计数中?但没有分组?
谢谢
答案 0 :(得分:2)
如果您只想获得所有计数的总和,可以使用:
SELECT SUM(CallCount) FROM MyTbl;
如果您想要总计和其他值,您可以使用OVER子句:
SELECT *, SUM(CallCount)OVER()
FROM MyTbl;
答案 1 :(得分:0)
SELECT sum(CallCount) FROM myTable
假设CallCount
是数字数据类型。
答案 2 :(得分:0)
Select [Total call count] = Sum([call count]) From [your table]
答案 3 :(得分:0)
SELECT SUM(CallCount) FROM tblname
答案 4 :(得分:0)
SELECT a.*,
b.TotalCount
FROM TableName a
CROSS JOIN
(
SELECT SUM(CallCount) TotalCount -- Calculates all CallCount
FROM TableName
) b
输出
╔════════╦══════════╦══════════╦═══════════╦════════════╗
║ TIMEID ║ TALKTIME ║ HOLDTIME ║ CALLCOUNT ║ TOTALCOUNT ║
╠════════╬══════════╬══════════╬═══════════╬════════════╣
║ 1 ║ 20 ║ 40 ║ 3 ║ 58 ║
║ 2 ║ 105 ║ 9 ║ 6 ║ 58 ║
║ 3 ║ 433 ║ 43 ║ 12 ║ 58 ║
║ 4 ║ 403 ║ 44 ║ 15 ║ 58 ║
║ 5 ║ 199 ║ 85 ║ 22 ║ 58 ║
╚════════╩══════════╩══════════╩═══════════╩════════════╝
答案 5 :(得分:0)
根据您的SQL Server版本,您可以使用SUM() Over()
这是一个窗口函数:
select Timeid,
talktime,
holdtime,
callcount,
sum(callcount) over() TotalCalls
from yourtable