Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.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/1/php/277.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_Replace_Special Characters - Fatal编程技术网

仅在MySQL数据库中搜索和替换图像链接的特殊字符(å;、ä;、ö;)

仅在MySQL数据库中搜索和替换图像链接的特殊字符(å;、ä;、ö;),mysql,replace,special-characters,Mysql,Replace,Special Characters,我需要替换MySQL数据库中的特殊字符å、ä、ö(用a或o)。如何应用此搜索和替换仅影响图像链接?图像具有jpeg或jpg扩展名。使用所需数据更新列。使用替换序列或编写自定义函数: UPDATE mytable SET link=REPLACE(link, 'ä,', 'a'); 如果链接分散在文本中,可以使用子字符串_index将其与文本分开,使用www.作为第一个分隔符,.jpg作为第二个分隔符,并在替换后与其余文本重新连接 set @a='sömetext www.göögle.com.

我需要替换MySQL数据库中的特殊字符å、ä、ö(用a或o)。如何应用此搜索和替换仅影响图像链接?图像具有jpeg或jpg扩展名。

使用所需数据更新列。使用替换序列或编写自定义函数:

UPDATE mytable
SET link=REPLACE(link, 'ä,', 'a');
如果链接分散在文本中,可以使用子字符串_index将其与文本分开,使用www.作为第一个分隔符,.jpg作为第二个分隔符,并在替换后与其余文本重新连接

set @a='sömetext www.göögle.com.jpg sömetext';
select concat(
substring_index(@a, 'www.', 1),
 'www.',
replace(substring_index(substring_index(@a, '.jpg', 1), 'www.', -1), 'ö','o'),
 '.jpg',
 substring_index(@a, '.jpg', -1)
);

>sömetext www.google.com.jpg sömetext
解决-

UPDATE wp_postmeta SET meta_value = REPLACE(REPLACE(REPLACE(meta_value, 'å', 'a') , 'ä', 'a') , 'ö', 'o')
WHERE LOWER(RIGHT(meta_value, 5)) = '.jpeg'
   OR LOWER(RIGHT(meta_value, 4)) IN ('.jpg', '.gif', '.png')

您可能需要输入一个额外的参数来查找和替换大写字母。

我尝试更新wp_postemta SET meta_value=replace('meta_value','a','a');但这将用“meta_值”替换所有受影响的行。我必须承认我对编写SQL查询不是很有经验:)@StaffanEstberg不要引用列名,我的坏希望你有备份:PHaha我没有担心:)我刚才确实解决了这个问题。请参阅下面的代码。这里有一组很好的替换:)询问代码的问题必须证明已经尝试了一些努力。对,对此表示抱歉。但还是设法解决了。请参阅下面的代码。缺少任何与您的问题相关的代码,很难为您定制解决方案。