在 MySQL 中替换字符串
Preet Sanghavi
2023年1月3日
在本教程中,我们旨在探索如何在 MySQL 中替换字符串。
在 MySQL 的特定表中,我们需要定期更新某些字符串值,以反映数据库特定表中公司的更新状态或产品列表。MySQL 为我们提供了一个 REPLACE()
函数来帮助我们高效地完成这项任务。
让我们更多地了解这个 REPLACE()
函数。
MySQL 中的 REPLACE()
方法将所有出现的字符串值替换为新字符串。该函数采用三个输入参数。
首先是我们希望从中找到字符串值的列名。其次是需要替换的字符串值本身,最后我们传递替换字符串值。
REPLACE()
函数的语法如下。
REPLACE(column_name, old_string_to_be_replaced, new_string_value)
注意
REPLACE()
方法考虑了区分大小写。让我们了解这种方法是如何工作的。
在开始之前,我们创建一个虚拟数据集来处理。我们创建了一个表 student_details
以及几行。
-- create the table student_details
CREATE TABLE student_details(
stu_id int,
stu_firstName varchar(255) DEFAULT NULL,
stu_lastName varchar(255) DEFAULT NULL,
primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName)
VALUES(1,"Preet","Sanghavi"),
(2,"Rich","John"),
(3,"Veron","Brow"),
(4,"Geo","Jos"),
(5,"Hash","Shah"),
(6,"Sachin","Parker"),
(7,"David","Miller");
在 MySQL 中替换字符串
在 student_details
表中,让我们尝试将 stu_firstName
替换为 Preet
到 Preeti
。我们可以使用以下查询执行此操作。
SELECT REPLACE(stu_firstName, 'Preet', 'Preeti') as new_firstNames from student_details;
查询的输出如下。
new_firstNames
Preeti
Rich
Veron
Geo
Hash
Sachin
David
注意
在上面的查询中,我们使用
new_firstNames
来表示更新的学生名字列表,在 MySQL 中使用 AS
关键字。这个任务的 REPLACE()
函数是 MySQL 中的 UPDATE
语句,它可以帮助我们更改表中的字符串。要替换表中的字符串,我们可以使用以下查询。
UPDATE name_of_the_table set column_name =REPLACE(column_name,'old_string','new_string');
要替换 student_details
表中学生的 Preet
名字,我们可以执行以下查询来完成工作。
update student_details set stu_firstName=REPLACE(stu_firstName,'Preet','Preeti');
上面查询的输出将为我们提供以下结果。
stu_id stu_firstName stu_lastName
1 Preeti Sanghavi
2 Rich John
3 Veron Brow
4 Geo Jos
5 Hash Shah
6 Sachin Parker
7 David Miller
如输出所示,字符串值为 Preet
且 stu_id
为 1
的名字已更新为 Preeti
。
因此,借助 REPLACE
方法,我们可以有效地重命名 MySQL 中表中的字符串。
作者: Preet Sanghavi