MySQL替换字符串函数

时间:2019-11-20 08:52:25  来源:igfitidea点击:

简介:在本教程中,我们将向您展示如何使用MySQL REPLACE字符串函数将字符串中的子字符串替换为另一个子字符串。

MySQL REPLACE字符串函数简介

MySQL为您提供了一个有用的字符串函数,称为REPLACE,该函数允许您用新字符串替换表列中的字符串。

REPLACE函数的语法如下:

REPLACE(str,old_string,new_string);

REPLACE函数具有三个参数。
它将旧字符串替换为字符串中的new_string

注意,有一条语句也称为REPLACE,用于插入或更新数据。
您不应将REPLACE语句与REPLACE字符串函数混淆。

REPLACE函数非常方便地搜索和替换表中的文本,例如更新过时的URL,更正拼写错误等。

在UPDATE语句中使用REPLACE函数的语法如下:

UPDATE tbl_name 
SET 
    field_name = REPLACE(field_name,
        string_to_find,
        string_to_replace)
WHERE
    conditions;

注意,在搜索要替换的文本时,MySQL使用区分大小写的匹配项来搜索要替换的字符串。

MySQL REPLACE字符串函数示例

例如,如果要更正示例数据库的产品表中的拼写错误,请按以下方式使用REPLACE函数:

UPDATE products 
SET 
    productDescription = REPLACE(productDescription,
        'abuot',
        'about');

该查询查找所有出现拼写错误的地方,并用产品表的productDescription列中有关正确的单词替换它。

请务必注意,在REPLACE函数中,第一个参数是没有引号(')的列名。
如果将引号放在字段名称(例如" field_name")上,查询会将该列的内容更新为" field_name",这将导致意外的数据丢失。

REPLACE函数不支持正则表达式,因此,如果您需要用模式替换文本字符串,则需要使用外部库中的MySQL用户定义函数(UDF),请在此处将其与Regex结合使用,以检查MySQL UDF。