Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在所有行的最后一个斜杠后添加特定单词_Mysql_Sql - Fatal编程技术网

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

我有一个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/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')
仅删除最后一个斜杠。