MySql Query,选择大于

Ele*_*bra 12 mysql sql

我有一个名为faq_questions的表,其结构如下:

id int not_null auto_increment,
question varchar(255),
sort_order int
Run Code Online (Sandbox Code Playgroud)

我正在尝试构建一个给定排序顺序的查询,选择具有下一个最高排序顺序的行.

例:

id  question                sort_order
1   'This is question 1'    10
2   'This is question 2'    9
3   'This is another'       8
4   'This is another one'   5
5   'This is yet another'   4
Run Code Online (Sandbox Code Playgroud)

好吧,所以想象一下我传入5表示已知的排序顺序(id 4),我需要它返回id为3的行.由于不能保证sort_order是连续的,所以我不能只选择known_sort_order + 1.

谢谢!

Era*_*rin 25

看起来太简单了,但它看起来像你需要的:

SELECT id,question FROM `questions` 
WHERE `sort_order` > sort_order_variable
ORDER BY sort_order ASC 
LIMIT 1
Run Code Online (Sandbox Code Playgroud)