如何在單個 MySQL 查詢中將特定列的所有行增加 1(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)

更新時間:2019 年 7 月 30 日

2K+ 瀏覽量

啟動你的事業

完成課程並獲得認證

開始
廣告
© . All rights reserved.