mysql update正则替换sql语句 有需要的朋友可参考一下,下面的update语句执行的是把www.phpfensi.com中的test替换为abc.
UPDATE 表名 SET 字段名= REPLACE( 替换前的字段值, '替换前关键字', '替换后关键字' ) WHERE 字段名 REGEXP "替换前的字段值";
例句,代码如下:
- UPDATEtestSET
- url=REPLACE('www.phpfensi.com','test','abc')
- WHEREurlREGEXP"www.phpfensi.com";
如果在记录中,有类似
www.phpfensi.com,www.phpfensi1.com,www.phpfensi2.com
要将这些记录都变成www.abc.com则执行sql语句如下:
- UPDATEtestSET
- url=REPLACE('www.phpfensi.com','test','abc')
- WHEREurlREGEXP'^(www.test)';
正则是非常灵活的,但是有非常复杂的情况,正则的效率不一定高于其他的方法,不一定要死抱着一颗树,有时候尝试新的方法或许会学到更多的东西.