MySQL 如何一次性使用单个查询增加特定列的所有行(ID列+1)

MySQL 如何一次性使用单个查询增加特定列的所有行(ID列+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
   - > );
Query OK, 0 rows affected (0.58 sec)

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

查询如下

mysql> insert into IdColumnadd1Demo values();
Query OK, 1 row affected (0.12 sec)
mysql> insert into IdColumnadd1Demo values();
Query OK, 1 row affected (0.18 sec)
mysql> insert into IdColumnadd1Demo values();
Query OK, 1 row affected (0.17 sec)
mysql> insert into IdColumnadd1Demo values();
Query OK, 1 row affected (0.08 sec)
mysql> insert into IdColumnadd1Demo values();
Query OK, 1 row affected (0.10 sec)
mysql> insert into IdColumnadd1Demo values();
Query OK, 1 row affected (0.13 sec)
mysql> insert into IdColumnadd1Demo values();
Query OK, 1 row affected (0.25 sec)
mysql> insert into IdColumnadd1Demo values();
Query OK, 1 row affected (0.40 sec)

使用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;
Query OK, 8 rows affected (0.18 sec)
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)

阅读更多:MySQL 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程