Оператор SQL для удаления части URL-адреса в столбце - PullRequest
1 голос
/ 05 июля 2019

У меня есть 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

Мне нужно удалить часть определенного URL (удалить встраивать-) от

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 Ответ

3 голосов
/ 05 июля 2019

Вы можете попробовать это:

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

Надеюсь, это будет достаточно конкретная замена. Если нет, мы могли бы рассмотреть возможность использования регулярных выражений (доступно при использовании MySQL 8+).

...