REPLACE函数用于字符串替换,语法为REPLACE(str, find_string, replace_with);可在SELECT中预览替换效果,如SELECT REPLACE('Hello World', 'World', 'MySQL');也可在UPDATE中批量更新数据,如UPDATE users SET email = REPLACE(email, '@old.com', '@new.com');函数区分大小写,支持空字符串替换,建议先用SELECT测试再执行更新。

在MySQL中,REPLACE() 是一个非常实用的字符串函数,用于在字符串中查找指定的子串,并将其替换为新的字符串。这个函数常用于数据清洗、文本处理等场景。
REPLACE函数的基本语法
REPLACE(str, find_string, replace_with)
- str:原始字符串或字段名
- find_string:要查找并替换的子字符串
- replace_with:用来替换的新字符串
函数会返回替换后的字符串。如果找不到匹配的子串,则返回原字符串。
在SELECT语句中使用REPLACE
你可以用 REPLACE 在查询时动态修改字段值。例如:
SELECT REPLACE('Hello World', 'World', 'MySQL') AS result;输出结果为:Hello MySQL
假设你有一张用户表 users,其中 email 字段包含旧域名,想查看替换后的效果:
动态WEB网站中的PHP和MySQL详细反映实际程序的需求,仔细地探讨外部数据的验证(例如信用卡卡号的格式)、用户登录以及如何使用模板建立网页的标准外观。动态WEB网站中的PHP和MySQL的内容不仅仅是这些。书中还提到如何串联JavaScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR外挂函数库的强大功能,对常用的、强大的包
在UPDATE语句中批量替换字段内容
更常见的用途是更新数据库中的实际数据。比如将所有邮箱从旧域名改为新域名:
UPDATE users SET email = REPLACE(email, '@old.com', '@new.com');这条语句会将 email 字段中所有出现的 @old.com 替换为 @new.com。
注意:REPLACE 会替换字段中所有匹配的子串,不只是第一个。
注意事项和使用技巧
- REPLACE 函数区分大小写(依赖于字段的排序规则)。如果需要忽略大小写,可结合 LOWER 或 UPPER 使用。
- 替换内容支持空字符串。例如:REPLACE('abc123', '123', '') 返回 abc。
- 可用于清理脏数据,如去除多余的字符、修复格式错误等。
- 执行 UPDATE 前建议先用 SELECT 测试替换效果,避免误操作。
基本上就这些。REPLACE 函数简单直接,适合处理常见的字符串替换需求,在日常SQL操作中非常实用。









