SQL从Table中选择最大值

时间:2011-05-05 11:54:49

标签: tsql max

在我的一次采访中,我被问到如何选择 没有关键字MAXTOP的数据库的最大值。

我的回答是:

select Table.Value 
from Table 
where Table.Value >= all( select Table.Value from Table) 

但这不是正确的。采访者说 我应该只用一个选择。

有什么想法吗?

谢谢;)

5 个答案:

答案 0 :(得分:6)

怎么样;

select -min(-fld) from table


效率低下& uglier Woops错过了单一选择限制

select distinct Value from Table T
  where not exists (select Value from Table where Value > T.Value)

答案 1 :(得分:4)

SELECT t1.Value
FROM atable t1
 LEFT JOIN atable t2 ON t1.Value < t2.Value
WHERE t2.ID IS NULL

答案 2 :(得分:2)

一个建议(如果你使用MySQL,我也提出限制):

SELECT table.value FROM table ORDER BY table.value DESC LIMIT 1;

答案 3 :(得分:2)

SET ROWCOUNT 1

SELECT number 
FROM master..spt_values
ORDER BY number DESC

答案 4 :(得分:0)

按键排序结果,降序,最后为空。 这使得行具有max,first。

选择第一行,然后就完成了。