得到最接近的值

时间:2017-02-04 07:07:11

标签: mysql

我需要从表中得到最接近的值... 如果我的表格如下

+----+----------+---------------------+
| id | display  | email               |
+----+----------+---------------------+
|  1 | 7        | myuser@example.com  |
+----+----------+---------------------+
|  2 | 1        | myuser@example.com  |
+----+----------+---------------------+
|  3 | 10        | myuser@example.com |
+----+----------+---------------------+
|  4 | 8        | myuser@example.com  |
+----+----------+---------------------+

我需要得到小于8的显示。这里有7和1.但我只需要7,这是第一个小于8的值。请帮我找一个逻辑来得到这个.. < / p>

3 个答案:

答案 0 :(得分:1)

一种方法是使用order by / limit

select *
from your_table
where display < 8
order by display desc
limit 1

答案 1 :(得分:0)

使用MAX()功能获取符合条件的最高值。

SELECT MAX(display)
FROM yourTable
WHERE display < 8

答案 2 :(得分:0)

您可以使用排序。

SELECT * FROM TB WHERE display < 8 ORDER BY display DESC LIMIT 1