查询以选择所有最小值的最大值

时间:2011-04-04 06:38:04

标签: mysql

我想提取一行,其中一个字段中的最大值但小于该值的某个值;

例如,

SELECT id,max(val) WHERE val<23

在这里,我需要字段val的最大值,但必须小于23.这样可以给出最大值,但id字段与字段,它提供第一次出现的id。

什么是正确的查询?

2 个答案:

答案 0 :(得分:6)

怎么样:

SELECT id, val FROM table WHERE val < 23 ORDER BY val DESC LIMIT 1

答案 1 :(得分:3)

试试这个:

SELECT ID, VAL
FROM [TABLE]
WHERE VAL = (SELECT MAX(VAL) FROM [TABLE] WHERE VAL < 23)