该表有几列。其中之一是“视频”。有很多行,所有单元格都包含一个字符串。琴弦应获得更多配件。它们包含标签和URL的不同名称,期望标签内的'XYREE-'不会改变。

这是想要的字符串:

{"label":"XYREE - A small title",
"link":"http://google.com/hasAlengthOf50symbols"}


这是实际的字符串:

XYREE - A small title |-|http://google.com/hasAlengthOf50symbols


这是我尝试查找想要的行并替换其中的一部分。

SELECT *  FROM `items` WHERE `video`
NOT REGEXP '{"label":"XYREE' REPLACE(video, 'XYREE', '{"label":"XYREE')


提前致谢。

最佳答案

这可以一步完成,但为清楚起见,我分多个步骤进行替换。

Update items
Set video = replace(video,'XYREE','{"label":"XYREE')


Update items
Set video = replace(video,'|-|','","link":"')



Update items
Set video = concat(video,'"}')

关于mysql - MySQL:选择特定的字符串并在几个位置上替换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20929439/

10-11 06:00