我有一个列包含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
我想把“更新”这个词改成“新闻”。是否可以通过脚本来实现这一点?
您可以简单地使用replace()函数。
例子:
带有where从句-
update tableName set columnName=REPLACE(columnName,'from','to') where condition;
不带where从句-
update tableName set columnName=REPLACE(columnName,'from','to');
注意:以上查询如果是直接对表中的更新记录进行查询,如果你想对表中的数据进行选择查询并且不应该受到影响,那么可以使用下面的查询-
select REPLACE(columnName,'from','to') as updateRecord;
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....