如何从mysql行中获取下一个最高数字,给定一行id。如何从mysql行中获取下一个最高数字,给定一行id
例如,
Categories | sort_order
Animal | 400
Cars | 500
>
Vans | 550
现在我想添加在汽车类别,超过面包车,我要检查下一个是什么后500
所以,当我加400应该返回500,当500应该retrun 550号最高
如何从mysql行中获取下一个最高数字,给定一行id。如何从mysql行中获取下一个最高数字,给定一行id
例如,
Categories | sort_order
Animal | 400
Cars | 500
>
Vans | 550
现在我想添加在汽车类别,超过面包车,我要检查下一个是什么后500
所以,当我加400应该返回500,当500应该retrun 550号最高
应尽量简单,如下:
SELECT MIN(sort_order) FROM mytable
WHERE sort_order > 500;
select min(sort_order) + 1 from tablename where sort_order >= 500
未经测试,但应该有效。
你问501或550? – jarlh 2015-02-11 15:25:37
550必须是,所以从501 - 549的一切都可以自由添加。 – flakerimi 2015-02-11 15:27:23
我会补充说,如果你打算'Vans'是'Cars'的子类别,那么根据这两个类别的排序顺序是不好的数据库设计。使用自引用表可能会更好。 – 2015-02-11 22:43:13