选择mysql中指定值下的最大值

rap*_*ndy 0 mysql sql

我正在寻找一种方法来选择表中指定值下的最大 id 值。我正在尝试使用以下查询

select max(id) as 'maxid' from proveedor where 'id' < 6666
Run Code Online (Sandbox Code Playgroud)

我期望的值是 3,但我得到的是 7777。有其他方法可以做到这一点吗?

+-------+
|   id  |
+-------+
| 1     |
| 2     |
| 3     |
| 6666  |
| 7777  |
+-------+
Run Code Online (Sandbox Code Playgroud)

Hac*_*man 5

你typo的query:

where 'id' < 6666
Run Code Online (Sandbox Code Playgroud)

应该是(不带引号):

where id < 6666
Run Code Online (Sandbox Code Playgroud)

因此,以下内容按预期工作:

select max(id) as 'maxid' from proveedor where id < 6666
Run Code Online (Sandbox Code Playgroud)

演示: SQLFiddle demo