6

我有一个 wordpress 安装,我已经破坏了 mysql 数据库。对于帖子,网址被列为“.../wordpress//...”而不是“.../wordpress/...”

如何在 SQL 中遍历表中的每一行并(可能使用正则表达式)用 'ss/' 替换 'ss//' 的每个实例?

4

1 回答 1

16
UPDATE sometable SET somefield=REPLACE(somefield,'/wordpress//','/wordpress/');

编辑

@Kevin 让我解释这个查询,所以我们开始吧:

  • 我假设基本更新很清楚:在所有行中sometable分配一个新值somefield
  • REPLACE()函数完全按照它所说的去做:它替换了文本。在我们的用例中,我们将它取为 的旧值somefield,然后将所有出现的 '/wordpress//' 替换为 '/wordpress/'
  • sometable这两个部分合在一起意味着,在分配值的所有行中somefield,如果您将旧值中的所有出现的 '/wordpress//' 替换为 '/wordpress/',就会产生结果。
于 2013-10-24T20:25:06.223 回答