我的 table 是这样的:
name | var
----------------
Joe | 3
Liz | 1
Liz | 4
Joe | 2
Peter | 3
Joe | 7
Liz | 2
我正在寻找一个 MYSQL 查询,它将为我提供列 name
的 DISCTINCT 名称,其中最高的 var
与 name
相关。
所以,对于上面的例子,我正在寻找
Joe | 7
Liz | 4
Peter | 3
我的尝试是:
SELECT name, var
FROM table
GROUP BY name
ORDER BY var DESC
我也试过
SELECT DISTINCT name, var
或
SELECT DISTINCT(name), var
但有了这些我得到了不同的名称、变量组合
最佳答案
您需要使用聚合函数 MAX()
来通过 GROUP BY
获得您想要的:
SELECT name, MAX(var) as var
FROM table
GROUP BY name
ORDER BY name ASC
...在这种情况下,ORDER BY
子句是可选的。
关于php - MYSQL:GET DISTINCT $col1 最高 $col2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22154042/