在 MySQL 中替换字符串

在本教程中,我们旨在探索如何在 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
CREATETABLEstudent_details(stu_idint,stu_firstNamevarchar(255)DEFAULTNULL,stu_lastNamevarchar(255)DEFAULTNULL,primarykey(stu_id));-- insert rows to the table student_details
INSERTINTOstudent_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 替换为 PreetPreeti。我们可以使用以下查询执行此操作。

SELECTREPLACE(stu_firstName,'Preet','Preeti')asnew_firstNamesfromstudent_details;

查询的输出如下。

new_firstNamesPreetiRichVeronGeoHashSachinDavid
注意
在上面的查询中,我们使用 new_firstNames 来表示更新的学生名字列表,在 MySQL 中使用 AS 关键字。

这个任务的 REPLACE() 函数是 MySQL 中的 UPDATE 语句,它可以帮助我们更改表中的字符串。要替换表中的字符串,我们可以使用以下查询。

UPDATEname_of_the_tablesetcolumn_name=REPLACE(column_name,'old_string','new_string');

要替换 student_details 表中学生的 Preet 名字,我们可以执行以下查询来完成工作。

updatestudent_detailssetstu_firstName=REPLACE(stu_firstName,'Preet','Preeti');

上面查询的输出将为我们提供以下结果。

stu_idstu_firstNamestu_lastName1PreetiSanghavi2RichJohn3VeronBrow4GeoJos5HashShah6SachinParker7DavidMiller

如输出所示,字符串值为 Preetstu_id1 的名字已更新为 Preeti

因此,借助 REPLACE 方法,我们可以有效地重命名 MySQL 中表中的字符串。