在单个 MySQL 查询中更改多个列?

mysqlmysqli database更新于 2025/5/26 8:44:17

为此,请在 MySQL 中使用 UPDATE 和 REPLACE()。让我们首先创建一个表 −

mysql> create table DemoTable
   -> (
   -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> StudentName varchar(100),
   -> StudentCountryName varchar(100)
   -> );
Query OK, 0 rows affected (0.67 sec)

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

mysql> insert into DemoTable(StudentName,StudentCountryName) values('John','US');
Query OK, 1 row affected (0.15 sec)

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

mysql select *from DemoTable;

输出

这将产生以下输出 −

+-----------+-------------+--------------------+
| StudentId | StudentName | StudentCountryName |
+-----------+-------------+--------------------+
|         1 | John        | US                 |
+-----------+-------------+--------------------+
1 row in set (0.00 sec)

以下是更新多列的查询 −

mysql> update DemoTable
   -> set StudentName=replace(StudentName,'John','Chris'),
   -> StudentCountryName=replace(StudentCountryName,'US','UK');
Query OK, 1 row affected (0.69 sec)
Rows matched: 1 Changed: 1 Warnings: 0

让我们再次检查表记录 −

mysql> select *from DemoTable;

输出

这将产生以下输出 −

+-----------+-------------+--------------------+
| StudentId | StudentName | StudentCountryName |
+-----------+-------------+--------------------+
|         1 | Chris       | UK                 |
+-----------+-------------+--------------------+
1 row in set (0.00 sec)

相关文章


有用资源