如何用 MySQL 查询替换字符串

这是一篇非常幼稚的文章,写这篇文章的唯一原因是希望我不再忘记语法,也不再需要百度搜索 MySQL REPLACE 函数的参数的顺序。 然后当我尝试查找它时,我几乎总是在 MySQL 的其他 REPLACE 命令的文档页面上止步…… 它用于使用与 INSERT 语句相同的语法更新表中的行。您的混淆,MySQL!

我想做的就是用一个简单的查询在我的 WordPress 数据库中搜索和替换——例如,当我们将 HTG 切换到 HTTPS 时,我们有大量指向 HTTP 版本的旧链接和图像。 所以我们不得不将所有 <img src=”http://www.jiyik.com/”> 链接更新为 <img src=”https://www.jiyik.com”>,并在其中有近 20,000 条帖子记录 我们的数据库,这将需要雇用一百名实习生。 或者……一条 SQL 语句。

所以现在,希望这是我最后一次查找它,使用 MySQL 查询替换字符串的语法:

UPDATE table set column1=REPLACE(column1,'SEARCH','REPLACE');

出于我们示例的目的,在 WordPress 中将所有链接和图像更新为 HTTPS,最终是:

UPDATE wp_posts set post_content = REPLACE(post_content, 'http://www.howtogeek.com','https://www.howtogeek.com');

这样一来,大家就免于雇用 100 人来手动替换所有这些链接。 应该加薪。

你是新手吗? 如果不知道如何打开 MySQL 提示符,那么你可能不应该阅读本文。 但以防万一,你可以打开终端并使用 wp-config.php 中的值(假设使用的是 WordPress)连接到数据库,然后粘贴 SQL 语句。

mysql -uUser -pPassword -hHost databasename

我有没有提到我们可能应该在运行之前备份我们的 WordPress 数据库? 我们绝对应该在开发或 QA 环境中对其进行测试? 否则你会破坏一切。