SQL UPDATE中的str_replace?
这是一个示例表格:
name | picture John S. | http://servera.host.com/johns.png Linda B. | http://servera.host.com/lindab.png ...
假设还有几百个logging。
让我们也说我们把服务器从“servera”移到“serverb”。
是否有可能进入这个表, 一个查询重命名列“图片”的内容为每个logging读取正确的服务器名称?
T-SQL:
update TBL set picture = Replace(picture, 'servera', 'serverb') where picture like '%servera%'
甲骨文:
update TBL set picture = replace(picture, 'servera', 'serverb') where picture like '%servera%'
MySQL的:
update TBL set picture = REPLACE(picture, 'servera', 'serverb') where picture like '%servera%'
UPDATE users SET picture = REPLACE(picture, 'http://servera.host.com/', 'http://serverb.host.com/') WHERE picture LIKE 'http://servera.host.com/%';
我包含更多的string,因为我担心“修复”名为“somethingserverasomething.jpg”的图像。 我也可以考虑有一个base_url表,只是在用户存储图像文件名,但这不是你问的问题;-)