查找SQL表中列的所有最高值

时间:2016-10-26 20:11:49

标签: mysql sql

我想选择编号最大的所有行,在这种情况下为293。但是,它可以是任何数字,因为我事先并不了解它。所以一个简单的where子句就不够了。我已经尝试过使用MAX(),但只需要1行,而我需要所有这些。任何人都可以帮助我吗?

ID     NUMBER
1       293
2       293
3       293
4       148
5       96

2 个答案:

答案 0 :(得分:4)

这是非常基本的:

SELECT *
FROM YourTable
WHERE NUMBER = (SELECT MAX(NUMBER) FROM YourTable);

答案 1 :(得分:2)

一种典型的方法是使用窗口函数:

select id, number
from (select t.*, max(number) over () as maxn
      from t
     ) t
where number = maxn;