Mysql 如何替换SQL中的部分字符串

Mysql 如何替换SQL中的部分字符串,mysql,sql,string,wordpress,url,Mysql,Sql,String,Wordpress,Url,我在db列“guid”中有URL 我需要把它改成 http://example.com/blog/wp-content/uploads/2014/03/Waterproofing2.png 我需要将所有URL替换为 http://example.com/wp-content/uploads/ 到 使用以下功能: update `table` set `column`= replace (`column`, 'http://example.com/','http://example.com/b

我在db列“guid”中有URL

我需要把它改成

http://example.com/blog/wp-content/uploads/2014/03/Waterproofing2.png
我需要将所有URL替换为

http://example.com/wp-content/uploads/

使用以下功能:

update `table` set `column`= replace (`column`, 'http://example.com/','http://example.com/blog/') where `column`like 'http://example.com/blog/wp-content/uploads%'

Heya最简单的方法是在sql中使用replace函数

简单的

REPLACE(YourString, ‘text to replace’, ‘replace with text’)
REPLACE
根据输入的排序规则执行比较。要在指定的排序规则中执行比较,可以使用
COLLATE
对输入应用显式排序规则

在SQL中,通配符与类SQL运算符一起使用

SQL通配符用于搜索表中的数据

对于SQL,一些通配符是:

Wildcard    Description
%   A substitute for zero or more characters
_   A substitute for a single character
所以最快的方法 使用CONCAT:

因此,以一位朋友为例,更改以下内容

styles/default/xenmoods/pants.png

styles/default/xenmoods/andrew.png

styles/default/xenmoods/rawr.png
对此

http://cdn.sociallyuncensored.com/styles/default/xenmoods/pants.png
http://cdn.sociallyuncensored.com/styles/default/xenmoods/andrew.png
http://cdn.sociallyuncensored.com/styles/default/xenmoods/rawr.png
代码:


我总是使用此查询来移动WordPress数据库

UPDATE wp_options SET option_value = replace(option_value, 'http://olddomain.com', 'http://newdomain.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = REPLACE (guid, 'http://olddomain.com', 'http://newdomain.com');
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://olddomain.com', 'http://newdomain.com');
UPDATE wp_posts SET post_content = REPLACE (post_content, 'src="http://olddomain.com', 'src="http://newdomain.com');
UPDATE wp_posts SET guid = REPLACE (guid, 'http://olddomain.com', 'http://newdomain.com') WHERE post_type = 'attachment';
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://olddomain.com','http://newdomain.com');

更新查询有什么问题?谢谢,但我需要选择所有开始并更改为的url
http://cdn.sociallyuncensored.com/styles/default/xenmoods/pants.png
http://cdn.sociallyuncensored.com/styles/default/xenmoods/andrew.png
http://cdn.sociallyuncensored.com/styles/default/xenmoods/rawr.png
UPDATE YOURTABLE SET path =CONCAT('http://example.com/blog/wpcontent/uploads/', path) ... where ..etc
UPDATE wp_options SET option_value = replace(option_value, 'http://olddomain.com', 'http://newdomain.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = REPLACE (guid, 'http://olddomain.com', 'http://newdomain.com');
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://olddomain.com', 'http://newdomain.com');
UPDATE wp_posts SET post_content = REPLACE (post_content, 'src="http://olddomain.com', 'src="http://newdomain.com');
UPDATE wp_posts SET guid = REPLACE (guid, 'http://olddomain.com', 'http://newdomain.com') WHERE post_type = 'attachment';
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://olddomain.com','http://newdomain.com');