我有一个表,其中包含一堆行和一个排序顺序。我想知道如何在删除一行时执行此操作,假设我删除了 sort_order 为 7 的突出显示行。然后我需要将 #8 更改为 #7 .. #9 为#8 .. #10 到#9 .. 和#11 到#10。
这样的事情可能吗?
最佳答案
如果您确实需要更改这些值(sort_order
仍然可以处理间隙),您可以
Delete From t
Where sort_order = 7
然后将剩余条目减少 1
:
Update t
Set sort_order = sort_order - 1
Where sort_order > 7
关于MySQL - 删除一行并使用正确的排序 ID 对其他行重新排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9098100/