如何找到&在sql phpmyadmin中替换一个字符串?

时间:2017-03-10 05:48:21

标签: mysql

我们在phpmyadmin SQL数据库中有很多行包含如下所示的句子:

a:2:{i:0;a:19:{s:41:s:3:"s:85:"http://link.com/abcd-123.html";s:0:"";s:5:"56";s:0:"";}}

我们想要查找此行中的哪个位置以http://link.com/开头,Ends with 123.html然后删除此前后的任何内容并更新到该行。
我们可以在sql中找到这个链接,但我们不知道如何在之前和之后删除! :

"%http://link.com/%123.html%"

示例:
这个:

    a:2:{i:0;a:19:{s:41:s:3:"s:85:"http://link.com/abcd-123.html";s:0:"";s:5:"56";s:0:"";}}

应该在每一行都转换成这个(注意!:“abcd-”在每一行都不同,只有这个链接的第一个和最后一个):

http://link.com/abcd-123.html

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

您可以使用MySQL的基本字符串函数来完成此操作。如果只有一个URL,并且您只想从该JSON数据中提取它,那么您可以尝试以下操作:

SELECT SUBSTRING(col,
                 INSTR(col, 'http'),
                 INSTR(col, 'html') - INSTR(col, 'http') + 4) AS url
FROM yourTable

在这里演示:

Rextester