从MySQL表删除记录后重新排序键?

为此,请使用带有一些数学计算的UPDATE命令。要删除ID,请使用DELETE。让我们首先创建一个表-

mysql> create table DemoTable1476
   -> (
   -> Id int
   -> );

使用插入命令在表中插入一些记录-

mysql> insert into DemoTable1476 values(10);
mysql> insert into DemoTable1476 values(20);
mysql> insert into DemoTable1476 values(30);
mysql> insert into DemoTable1476 values(40);

使用select语句显示表中的所有记录-

mysql> select * from DemoTable1476;

这将产生以下输出-

+------+
| Id   |
+------+
|   10 |
|   20 |
|   30 |
|   40 |
+------+
4 rows in set (0.00 sec)

以下是从表中删除一些ID的查询-

mysql> delete from DemoTable1476 where Id=30;

删除后,表记录如下:

mysql> select * from DemoTable1476;

这将产生以下输出-

+------+
| Id   |
+------+
|   10 |
|   20 |
|   40 |
+------+
3 rows in set (0.00 sec)

以下是从MySQL表删除后重新排序键的查询-

mysql> update DemoTable1476 set Id=Id-10 where Id > 30;
Rows matched: 1  Changed: 1 Warnings: 0

让我们再次检查表记录-

mysql> select * from DemoTable1476;

这将产生以下输出-

+------+
| Id   |
+------+
|   10 |
|   20 |
|   30 |
+------+
3 rows in set (0.00 sec)