插入元素时,在DB表中重新排序行有一个很好的答案: Reorder rows in a MySQL table 但是当删除一行时呢?在这种情况下,查询会是什么?
答案 0 :(得分:0)
插入元素时重新排序数据库表中的行
根据我的知识,这是奇怪的原因,您的数据库表中没有维护固有的顺序。会有这种情况,那么就不需要order by
条款了。
在一个句子中,您的表中没有维护特定的顺序,因此在从表中获取记录时,您将根据需要使用order by
子句对数据进行排序。
不确定重新排序表格数据是什么意思。
答案 1 :(得分:0)
我还没有对此进行过测试,它在当天很晚,会在其他时间进行测试,但这可能会解决问题:
UPDATE MyTable
SET `Order` = `Order` - 1
WHERE `Order` > (SELECT `Order`
FROM MyTable
WHERE ID = <delete-row-id>);