SQL语句删除列上的一部分URL

时间:2019-07-05 11:10:27

标签: mysql sql replace phpmyadmin mariadb

我有一个videos表,其中的列URL具有许多不同的URL类型

https://google.com/questions/ask?963
https://google.com/embed/ask
https://google.com/top/123.html
https://video.net/embed-ask?963
https://video.net/embed-123.html
https://video.net/top?123.html

我需要删除特定网址的一部分(删除嵌入-) 来自

https://video.net/embed-75mdabvgl3do.html

https://video.net/75mdabvgl3do.html

我已经将此SQL放入了托盘,但返回了空结果(受影响的0行)

UPDATE `videos` SET url = REPLACE(url, '%video.net/embed-%', '%video.net/%') WHERE `url` LIKE '%video.net/embed-%';

1 个答案:

答案 0 :(得分:3)

您可以尝试以下方法:

UPDATE videos
SET url = REPLACE(url, 'video.net/embed-', 'video.net/')
WHERE url LIKE '%video.net/embed-%';

希望这可以足够具体地替代。如果没有,我们可以考虑使用正则表达式(如果使用MySQL 8+则可用)。