使用 MySQL 查找并替换整个表中的文本?

mysqlmysqli database

可以在replace()函数的帮助下找到并替换文本。借助以下步骤进行解释−

首先,借助create命令创建一个表,如下所示 −

mysql> CREATE table FindAndReplaceDemo
-> (
-> FirstName varchar(200)
-> );
Query OK, 0 rows affected (0.43 sec)

创建上表后,借助插入命令插入记录。如下所示 −

mysql> INSERT into FindAndReplaceDemo values('john');
Query OK, 1 row affected (0.15 sec)

mysql> INSERT into FindAndReplaceDemo values('smith');
Query OK, 1 row affected (0.17 sec)

mysql> INSERT into FindAndReplaceDemo values('Bob');
Query OK, 1 row affected (0.12 sec)

mysql> INSERT into FindAndReplaceDemo values('carol');
Query OK, 1 row affected (0.18 sec)

通过 select 语句可以显示所有记录,如下−

mysql> SELECT * from FindAndReplaceDemo;

The following is the output obtaine

+-----------+
| FirstName |
+-----------+
| john      |
| smith     |
| Bob       |
| carol     |
+-----------+
4 rows in set (0.00 sec)

现在,在替换函数的帮助下,名字 Carol 被替换为 Taylor。其语法如下所示 −

UPDATE yourTableName SET column_name= replace(column_name, 'Old_Value', 'New_Value');

使用上述语法的查询如下 −

mysql> UPDATE FindAndReplaceDemo SET FirstName = replace(FirstName, 'carol', 'Taylor');
Query OK, 1 row affected (0.14 sec)
Rows matched: 4 Changed: 1 Warnings: 0

借助 SELECT 语句可以再次查看表的内容。这在下面给出 −

mysql> SELECT * from FindAndReplaceDemo;

以下是获得的输出

+-----------+
| FirstName |
+-----------+
| john      |
| smith     |
| Bob       |
| Taylor    |
+-----------+
4 rows in set (0.00 sec)

从上面的输出可以看出,Carol 被替换为 Taylor。


相关文章