1

我有一张有 1000 行的表。存在的列是 ID、DBID、TalkTime。

我在做:

SELECT DBID, SUM(TalkTime)
FROM Incoming_Calls
GROUP BY DBID

这压缩到大约 18 行。

我想知道如何计算每个分组中存在的记录数。因此,例如 DBID 105 的总和为 526,由 395 条记录组成,DBID 104 的总和为 124,由分组期间的 241 条记录组成。

有任何想法吗?

使用 Microsoft SQL Server 2012。

4

2 回答 2

4

然后使用COUNT()

SELECT DBID, 
       COUNT(*) TotalRows, 
       SUM(TalkTime) TotalTalkTime
FROM   Incoming_Calls
GROUP  BY DBID
于 2013-03-18T15:39:47.360 回答
0
Select DBID, SUM(TalkTime), COUNT(TalkTime) TalkTimeCount 
FROM Incoming_Calls 
GROUP BY DBID

或者,如果您想包含空值计数,那么您可以这样做

Select DBID, SUM(TalkTime), @@ROWCOUNT 
FROM Incoming_Calls 
GROUP BY DBID
于 2013-03-18T15:49:25.033 回答