一尘不染

查询以重新索引MySQL数据库的主键

sql

我在MySQL中有一个具有主键列的表。

可以说:

ID | Value
1  | One
2  | Two
6  | Three
8  | Four
9  | Five

我要如何做到:

ID | Value
1  | One
2  | Two
3  | Three
4  | Four
5  | Five

没有其他表格。只是一个。我只希望ID正确排列。

有什么建议吗?可能是一个查询.. :)


阅读 137

收藏
2021-03-17

共1个答案

一尘不染

甚至有一种简单的方法可以通过编写此查询来完成结果

SET @newid=0;
UPDATE tablename SET primary_key_id=(@newid:=@newid+1) ORDER BY primary_key_id;

该查询将重新索引主键从 1

2021-03-17