MySQL字符串替换

我有一个包含url(id,url)的列:

http://www.example.com/articles/updates/43
http://www.example.com/articles/updates/866
http://www.example.com/articles/updates/323
http://www.example.com/articles/updates/seo-url
http://www.example.com/articles/updates/4?something=test

我想将“更新”一词更改为“新闻”。 是否可以用脚本来做到这一点?


UPDATE your_table
SET your_field = REPLACE(your_field, 'articles/updates/', 'articles/news/')
WHERE your_field LIKE '%articles/updates/%'

现在是这样的行

http://www.example.com/articles/updates/43

将会

http://www.example.com/articles/news/43

http://www.electrictoolbox.com/mysql-find-replace-text/


是的,MySQL有一个REPLACE()函数:

mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');
    -> 'WwWwWw.mysql.com'

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_replace

请注意,如果您在使用SELECT时创建别名,则会更容易

SELECT REPLACE(string_column, 'search', 'replace') as url....

替换功能应该适合你。

REPLACE(str,from_str,to_str)

返回字符串str,并将所有出现的字符串from_str替换为字符串to_str。 搜索from_str时, REPLACE()执行区分大小写的匹配。

链接地址: http://www.djcxy.com/p/94209.html

上一篇: MySQL string replace

下一篇: Fastest method to replace all instances of a character in a string