如何在不使用SQL Server 2005中的Max,Min或Order by Clause的情况下从表中获取最大值?

Kul*_*MCA 1 sql-server-2005

我有一个表有Salary有3列我想从这个表中获得最大值而不使用Max,Min或order by子句.

数据

薪水有三个字段 - ID,Name,Amount 金额值 -100,70,80,400,300

我需要从这些数据中获得400的值.

我知道从薪水中选择最大值(金额),但我需要没有max,min或Order by子句.

提前致谢.

a_h*_*ame 7

SELECT *
FROM salary s1
WHERE s1.amount > ALL (SELECT s2.amount 
                       FROM salary s2 
                       WHERE s2.id <> s1.id);

但我怀疑它会比使用max()更快