例如,我有索引的节点
1
2
7
8
Run Code Online (Sandbox Code Playgroud)
我需要将索引更改为
1
2
3
4
Run Code Online (Sandbox Code Playgroud)
我可以
UPDATE TODO SET id = id + 1000000000
UPDATE TODO SET id = id - (1000000000 + 1)
Run Code Online (Sandbox Code Playgroud)
(棘手,因为id必须是唯一的)
移位所有索引并使0 1 6 7但我需要建立关系,需要使第一个索引转移到0,其他索引转移到前一个索引.在sqlite中没有存储过程,所以我很担心如何在没有变量的情况下建立这样的关系?
欢迎提供各种逻辑技巧.
id一个自动增量列(声明为INTEGER PRIMARY KEY);按所需顺序将所有记录复制到该表中,但不包含该id列:
INSERT INTO NewTable(all_the, other, columns)
SELECT all_the, other, columns
FROM OldTable
ORDER BY id;
Run Code Online (Sandbox Code Playgroud)(这将从id1开始创建s.)