如何在单个MySQL查询(ID列+1)中将特定列的所有行加1?

要将特定ID列的所有行增加1,您需要使用UPDATE命令并更新表。查询的语法如下。我们在这里也使用了ORDER BY

UPDATE yourTableName SET yourIdColumnName=yourIdColumnName+1 ORDER BY yourIdColumnName DESC;

为了理解上述语法,让我们创建一个表。创建表的查询如下

mysql> create table IdColumnadd1Demo
   - > (
   - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY
   - > );

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

查询如下

mysql> insert into IdColumnadd1Demo values();
mysql> insert into IdColumnadd1Demo values();
mysql> insert into IdColumnadd1Demo values();
mysql> insert into IdColumnadd1Demo values();
mysql> insert into IdColumnadd1Demo values();
mysql> insert into IdColumnadd1Demo values();
mysql> insert into IdColumnadd1Demo values();
mysql> insert into IdColumnadd1Demo values();

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

查询如下

mysql> select *from IdColumnadd1Demo;

以下是输出

+----+
| Id |
+----+
|  1 |
|  2 |
|  3 |
|  4 |
|  5 |
|  6 |
|  7 |
|  8 |
+----+
8 rows in set (0.00 sec)

这是用于调整MySQL ID列的查询+1

mysql> update IdColumnadd1Demo set Id=Id+1 Order By Id DESC;
Rows matched: 8 Changed: 8 Warnings: 0

再次检查表记录。

查询如下

mysql> select *from IdColumnadd1Demo;

以下是输出

+----+
| Id |
+----+
|  2 |
|  3 |
|  4 |
|  5 |
|  6 |
|  7 |
|  8 |
|  9 |
+----+
8 rows in set (0.00 sec)