php - 仅获取 Group By 返回的最高值

标签 php mysql

这是我的表格(简化版)的样子

agentID|amount
   1   |   5  
   2   |   2  
   3   |   4  
   3   |   2  
   1   |   3

现在如果我这样做

SELECT agentID, SUM(amount) AS totalAmount FROM myTable GROUP BY agentID

我会得到每个 agentID 的金额总和。但是,如果我只对返回的 sum(amount) 最大的 agentID 感兴趣怎么办?

尝试过类似的东西

SELECT agentID, MAX(SUM(amount) AS Bought) FROM myTable GROUP BY agentID

SELECT MAX(SELECT agentID, SUM(amount) AS Bought FROM myTable GROUP BY agentID) FROM myTable

但它返回语法错误:p

最佳答案

您可以在末尾添加ORDER BY

SELECT agentID, SUM(amount) AS totalAmount FROM myTable GROUP BY agentID ORDER BY SUM(amount) DESC LIMIT 1;

关于php - 仅获取 Group By 返回的最高值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38115973/

相关文章:

php - 如何在一条语句中创建三个表的sql查询?

具有良好用户登录/管理的 PHP 框架

Javascript检测要汇总的多个选择选项的总数

php - 如何检查哪些优惠券适用于 WooCommerce 中的哪些产品?

php - 如何使用 Ajax 或 Jquery 填充文本框中的值?

php - sql当月查询

基于用户输入的 PHP 和 MySQL 查询不起作用

php - 我的数据库中的 HTML 实体。搜索结果为零

mysql - Wamp 服务器 MySQL - 高性能 ~500mb

mysql - 我想在我的架构上添加这个约束