开发者

mysql find/replace string in fields

开发者 https://www.devze.com 2023-02-10 23:41 出处:网络
I have a table which has a few varchar fields named like this: image_fullres | image_highres | image_mediumres | image_lowres | image_thumbnail

I have a table which has a few varchar fields named like this:

image_fullres | image_highres | image_mediumres | image_lowres | image_thumbnail

I currently have the same value for each of these fields(differing by row), so image_fullres has the same path as image_lowres and so on.

an example value for these paths would be http://mysite.com/images/image1.jpg

I would like to have each of these fields to contain a different and appropriate path name, so:

  • image_fullres has value of http://mysite.com/images/fullres/image1.jpg
  • image_highres has value of http://mysite.com/images/highres/image1.jpg
  • im开发者_StackOverflow社区age_mediumres has value of http://mysite.com/images/mediumres/image1.jpg

and so on...

Since all of my data is already in the database with duplicate paths by row, what SQL can I execute that would change the value of each field's data to an appropriate path?


Example:

UPDATE table 
SET image_fullres = REPLACE(image_fullres, 'http://mysite.com/images/', 'http://mysite.com/images/fullres/')

This will update the image_fullres column for all rows in your table. You can do one such statement for each column, or combine them into one:

UPDATE table 
SET
image_fullres = REPLACE(image_fullres, 'http://mysite.com/images/', 'http://mysite.com/images/fullres/'),
image_highres = REPLACE(image_highres, 'http://mysite.com/images/', 'http://mysite.com/images/highres/'),
...
...
0

精彩评论

暂无评论...
验证码 换一张
取 消