mysql - 使用 HAVING 和 GROUP BY 获取总金额

标签 mysql group-by sum having

假设我有一个“订单”表,我必须打印花费超过 100 美元的客户列表。为此,我使用 HAVING 和 GROUP BY:

SELECT clientID, SUM(amount) AS spent
FROM orders
GROUP BY clientID
HAVING spent >= 100;

现在我想知道在 SAME 查询中是否有可能获得所有花费超过 100 美元的客户的总花费金额,以及客户/行的总数。

  • 约翰 > 125 美元
  • 母鹿 > 100 美元
  • 总计 > 225 美元(2 位客户)

最佳答案

WITH ROLLUP 是你的 friend 。

SELECT clientID, SUM(amount) AS spent
FROM orders
GROUP BY clientID
WITH ROLLUP
HAVING spent >= 100;

关于mysql - 使用 HAVING 和 GROUP BY 获取总金额,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37415255/

相关文章:

mysql - 存储所有用户的登录日期

mysql - 如何添加和比较子查询的结果

mysql - MySql数据库中的时间格式

java - 即使存在 getter,也会发生 PropertyNotFoundException

php - 如何显示多张图片上传中的多张图片

mysql - 使用 2 个右连接和分组依据的查询不会显示正确的结果

ruby-on-rails - 事件记录/Postgres : PGError must appear in the GROUP BY clause or be used in an aggregate function

mysql - 将相似的项目分组

python - 在 Python/SageMath 中求解非线性方程

mysql - 子查询示例帮助