首页 文章

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

提问于
浏览
15

我在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成为一个合适的系列 .

有什么建议??一个查询也许.. :)

3 回答

  • 10

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

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

    此查询将重新索引主键,从 1 开始

  • 36

    在我看来,你有两个选择 .

    1)创建一个新表并复制现有数据 .

    2)将另一个自动增量字段添加到现有表中,然后删除原始列 .

    ALTER TABLE tableName ADD NewIdn INT NOT NULL AUTO_INCREMENT KEY
    
  • 0

    我在phpmyadmin中通过取消选中A_I框(自动增量设置),单击保存,然后再次检查,然后再次单击保存来完成此操作 .

相关问题