如何從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