使用regexp进行mysql更新

时间:2012-05-05 19:32:57

标签: mysql regex

我想从我的表1) 32) 121) 1000)中删除某些内容...格式为number + )

我尝试了这段代码。

UPDATE articles SET 
title= REPLACE(title,'\d)', '' ) 
WHERE title regexp "\d)*"

phpmyadmin中没有发生任何事情,如何写正确?感谢。

3 个答案:

答案 0 :(得分:7)

你不能:Mysql不支持基于正则表达式的替换。

请参阅this SO question了解解决方法。

答案 1 :(得分:1)

最后,我使用一些php来快速解决这个问题。

for ($i=1; $i<=9999; $i++){
 $my_regex = $i.')';
 mysql_query("UPDATE articles SET title = REPLACE(title,'".$i."', '' ) where title like '%".$i."%'");
}

答案 2 :(得分:0)

作为替代方案,根据表的大小,您可以使用substring函数进行解决方法。