小编cra*_*cat的帖子

计数(*)和Sum在同一行

我在这里撞击墙壁.我已经看过几十个类似的StackOverflow问题了,它们让我很接近,但我还没找到一个能满足我需求的问题.我在数据库中有数千个问题,每个问题都有多个用户的答案.我需要汇总答案,以显示每个问题的不同答案的数量.这是最容易的部分; 我磕磕绊绊的地方在于添加一个Sum列来显示每个问题的答案总数.如果我将Where子句限制为特定问题,我可以这样做,但是如果可能的话,我试图将这一切都集中到一个查询中.这是查询:

select c.ID, a.userID. c.question, a.answer, count(a.answer) as cnt
from NotableAnswers a, categories b, questions c
where c.fkCategory = b.ID and a.questionID = c.ID and b.ID = 18
Group By a.answer, c.ID, c.question
Order By c.ID, answer asc
Run Code Online (Sandbox Code Playgroud)

我需要的是一个看起来像这样的结果集

ID   | userID |  Question   |    Answer    |   cnt   |    totcnt
------------------------------------------------------------------
175  | 10318  |Favorite...  |Dropbox       |    15   |      35
175  | 10354  |Favorite...  |Box           |    2    |      35
175  | 10323  |Favorite...  |Google Drive  |    15   |      35 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server sum count

1
推荐指数
1
解决办法
84
查看次数

标签 统计

count ×1

sql ×1

sql-server ×1

sum ×1