【问题标题】:Summing up numbers总结数字
【发布时间】:2015-01-30 20:19:13
【问题描述】:

您好想知道如何使用 PostgreSQL 来 sum() "CALL ID count",然后将结果放在列表的底部。我尝试过 union 和 group by。

AGENT   CALL ID count
xxxxx   13
xxxxx   21
xxxxx   49
xxxxx   58
xxxxx   67
xxxxx   32
xxxxx   9
xxxxx   8
xxxxx   39
xxxxx   1047

AGENT   CALL ID count
xxxxx   13
xxxxx   21
xxxxx   49
xxxxx   58
xxxxx   67
xxxxx   32
xxxxx   9
xxxxx   8
xxxxx   39
xxxxx   1047
TOTAL   1343

Select Agent,Sum("CALL ID count") as TOTAL 
from AgentCount 
group by "CALL ID count" 
order by Agent

我希望得到代理名称的计数,然后是最后的总数 谢谢

【问题讨论】:

  • 删除 group by ,你很高兴
  • 是的,这行得通,但我只给了我希望得到代理名称的总和,然后是最后的总数
  • 改为按代理分组并执行 union ,因此您将有两个联合。
  • Postgres 没有 ROLLUP,太棒了。

标签: sql postgresql


【解决方案1】:

你必须使用 UNION 来合并两个查询,然后相应地使用 ORDER BY,看看下面的例子:

Select Agent,Sum("CALL ID count") as TOTAL 
from AgentCount 
group by Agent 
UNION
Select 'TOTAL' AS Agent ,Sum("CALL ID count") as TOTAL FROM AgentCount 
ORDER BY CASE WHEN Agent = 'TOTAL' THEN 1 ELSE 0 END ASC, Agent

【讨论】:

  • 好吧,“按情况排序”在我的 ZOHO 中不起作用,但我会稍微调整一下。但我喜欢它。
猜你喜欢
  • 1970-01-01
  • 2022-10-13
  • 1970-01-01
  • 1970-01-01
  • 2014-08-31
  • 1970-01-01
  • 1970-01-01
  • 2019-03-27
  • 1970-01-01
相关资源
最近更新 更多