Mysql 在所有行的最后一个斜杠后添加特定单词
我有一个MySQL服务器,我试图在所有行的最后一个斜杠后面放一个特定的单词Mysql 在所有行的最后一个斜杠后添加特定单词,mysql,sql,Mysql,Sql,我有一个MySQL服务器,我试图在所有行的最后一个斜杠后面放一个特定的单词 ** table ** http://link.com/prop/datadelivery/sys/187500461.mp4 http://link.com/prop/datadelivery/sys/187500462.mp4 http://link.com/prop/datadelivery/sys/187500463.mp4 http://link.com/prop/datadelivery/sys/187500
** table **
http://link.com/prop/datadelivery/sys/187500461.mp4
http://link.com/prop/datadelivery/sys/187500462.mp4
http://link.com/prop/datadelivery/sys/187500463.mp4
http://link.com/prop/datadelivery/sys/187500464.mp4
我需要在最后一个斜杠后添加“/p1/”。结果应该是这样的:
** table **
http://link.com/prop/datadelivery/sys/p1/187500461.mp4
http://link.com/prop/datadelivery/sys/p1/187500462.mp4
http://link.com/prop/datadelivery/sys/p1/187500463.mp4
http://link.com/prop/datadelivery/sys/p1/187500464.mp4
我看了一下命令“替换”,但我相信在这种情况下,它可能不是我的理想解决方案。
你能帮助我吗?谢谢你可以试试这个。在
%/sys/
之后添加%
,否则将无法匹配任何数据。因为这些数据在/sys
之后有数据
update T
set name = replace(name, '/sys/', '/sys/p1/')
where name like '%/sys/%';
你可以试试这个。在
%/sys/
之后添加%
,否则将无法匹配任何数据。因为这些数据在/sys
之后有数据
update T
set name = replace(name, '/sys/', '/sys/p1/')
where name like '%/sys/%';
您可以使用查找子字符串在字符串中的位置。唯一的问题是,它返回子字符串的第一个位置。你必须处理d字符串,才能得到最后一个。使用,您可以在最后一个'/'
前后剪切子字符串,并将其重新组合在一起,包括您的附录。当然,你最终需要重新反转它
UPDATE elbat
SET nmuloc = reverse(concat(substring(reverse(nmuloc), 1, locate('/', reverse(nmuloc))),
reverse('p1'),
substring(reverse(nmuloc), locate('/', reverse(nmuloc)))));
您可以使用查找子字符串在字符串中的位置。唯一的问题是,它返回子字符串的第一个位置。你必须处理d字符串,才能得到最后一个。使用,您可以在最后一个'/'
前后剪切子字符串,并将其重新组合在一起,包括您的附录。当然,你最终需要重新反转它
UPDATE elbat
SET nmuloc = reverse(concat(substring(reverse(nmuloc), 1, locate('/', reverse(nmuloc))),
reverse('p1'),
substring(reverse(nmuloc), locate('/', reverse(nmuloc)))));
向我们展示您是如何接受
replace
…updatenames set name=replace(name,'/sys','/sys/p1/'),其中的名称类似“%/sys/”代码>但工作不正常如何使用replace(str,'/sys','/sys/p1')
仅删除最后一个斜杠。向我们展示如何使用replace
。updatenames set name=replace(name,'/sys','/sys/p1/'),其中的名称类似“%/sys/”代码>但工作不正常如何使用替换(str,'/sys','/sys/p1')
仅删除最后一个斜杠。