MySQL查询最近的最低价值&实际价值问题

时间:2012-06-12 07:08:32

标签: mysql

我有桌子 'file'与fileds&值

id number
1   13
2   17
3   20
4   30
5   40

如果我提供14,15,16那么它应该给我13。 如果我提供22,24,24那么它应该给我20。 如果我提供13,那么它应该给我13。 如果我提供20,那么它应该给我20。

我正在为此寻找mysql查询,它提供了最接近的最低值&实际价值。

1 个答案:

答案 0 :(得分:1)

假设您发送一个包含值列表的表

SELECT
   *
FROM
   MyTable
WHERE
   number <= (SELECT MIN(requireNuber) FROM InputTable)
ORDER BY 
   number DESC
LIMIT 1

虽然,我确信你只能从客户端发送最低值到MySQL(为什么不能),这会使代码看起来像

SELECT
   *
FROM
   MyTable
WHERE
   number <= @MyParameter
ORDER BY 
   number DESC
LIMIT 1