|
1
2
假设
我使用MySQL5.1.52在您的示例数据上测试了这一点,它工作正常。如果您需要将早期条目移动到较迟的位置,或者移动中间的条目等,相同的SQL也可以工作。只需设置
|
|
|
2
1
我最终使用了 adjacencies table . 当时我不知道。 |
|
|
3
0
我不确定这是否算是一个解决方案,但实际上您不需要对每行进行一次更新。如果你把“foo”从位置4移到位置1,你只需要
即使你从1000位置移动到500位置,或者从500位置移动到1000位置,更新的次数也是一样的(当然,你需要翻转它),你只需要大量移动所有受影响的行加或减1 |
|
|
4
0
您可以在一个这样的更新语句中执行此操作:
很明显你会取代
|
|
|
5
0
如果您使用的是SQL Server,那么UUU可以使用链接列表表示和CTE来实现这一点。但我不知道MySQL是否支持CTE…
这将产生以下前后结果:
|
|
|
6
0
我想你的桌子上有一把主键,
如果没有ID,请使用itemname。 |
|
|
7
0
|
|
8
0
如果列只是指定了行的顺序,我看不出使用0和负数有什么问题。 |
|
|
Bard.Mus · 迁移后的数据库字符集环境 1 年前 |
|
Efannnnnn · 将Id数据存储到任何页面 1 年前 |
|
|
yooooo · 用于在块中删除的存储过程-LOOP未执行 1 年前 |
|
John Beasley · 更新一定数量记录的连续日期 1 年前 |
|
|
ColinM · MySQL以前的结果查询返回不正确的值 1 年前 |
|
Sergey_Z · MySQL只需无条件连接2个表和交叉连接 1 年前 |