僅替換 MySQL 中一列中的特定值


使用 REPLACE() MySQL 函式進行替換。由於需要針對此函式更新表格,因此請結合 SET 子句使用 UPDATE() 函式。

以下為語法 −

update yourTableName set yourColumnName=replace(yourColumnName,yourOldValue,yourNewValue);

我們先建立一張表格 −

mysql> create table DemoTable
(
   FirstName varchar(100),
   CountryName varchar(100)
);
Query OK, 0 rows affected (0.69 sec)

使用插入命令在表格中插入一些記錄 −

mysql> insert into DemoTable values('John','AUS');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values('Bob','AUS');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Chris','US');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('David','UK');
Query OK, 1 row affected (0.43 sec)
mysql> insert into DemoTable values('Adam','US');
Query OK, 1 row affected (0.09 sec)

使用 select 語句顯示錶格中的所有記錄 −

mysql> select *from DemoTable;

將會生成以下輸出 −

+-----------+-------------+
| FirstName | CountryName |
+-----------+-------------+
| John      | AUS         |
| Bob       | AUS         |
| Chris     | US          |
| David     | UK          |
| Adam      | US          |
+-----------+-------------+
5 rows in set (0.00 sec)

以下為替換特定值所用的查詢 −

mysql> update DemoTable set CountryName=replace(CountryName,'AUS','US');
Query OK, 2 rows affected (0.17 sec)
Rows matched: 5 Changed: 2 Warnings: 0

讓我們再次檢查一下表格記錄 −

mysql> select *from DemoTable;

將會生成以下輸出 −

+-----------+-------------+
| FirstName | CountryName |
+-----------+-------------+
| John      | US          |
| Bob       | US          |
| Chris     | US          |
| David     | UK          |
| Adam      | US          |
+-----------+-------------+
5 rows in set (0.00 sec)

更新時間: 27-Sep-2019

9K+ 檢視次數

開啟你的職業生涯

透過完成課程獲取認證

開始
廣告