替换mysql表列中的部分字符串

时间:2013-10-24 20:21:23

标签: mysql sql regex wordpress

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

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

1 个答案:

答案 0 :(得分:15)

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

修改

@Kevin让我解释这个问题,所以我们走了:

  • 我认为基本更新是明确的:在sometable的所有行中为somefield分配新值
  • REPLACE()函数正如它所说:它取代了文本。在我们的用例中,我们将其取为somefield的旧值,然后将'/ wordpress //'的所有字数替换为'/ wordpress /'
  • 这两个部分合在一起意味着,在sometable分配somefield值的所有行中,如果您将'/ wordpress //'的所有字数替换为'/ wordpress /',旧的价值。