Улучшенная функция SQL Replace - способна обрабатывать переменную часть - PullRequest
0 голосов
/ 26 октября 2011

Я хотел бы обновить тысячи записей в моем дБ SQL.

my post_content из my_table похоже на

блаблабла htt *: //vimeo.com/12345678 блаблабла

или

blablabla htt *: //vimeo.com/12345678 blablabla htt *: //vimeo.com/12345678 (blablabla)

и я бы хотел заменить

HTT *: //vimeo.com/12345678

от

<iframe src="htt*://player.vimeo.com/video/12345678?title=0&amp;byline=0&amp;portrait=0" width="400" height="300" frameborder="0" webkitAllowFullScreen allowFullScreen></iframe>

Проблема в том, что 12345678 отличается в каждом сообщении ... и мне нужно заменить код перед этим номером и добавить код после этого номера.

Заменить код до того, как число будет простым, но после, я не знаю, как это сделать? Как сказать функции замены: найдите htt *: // vimeo / 12345678, укажите после чисел и добавьте «? Title = 0 & a ... .

Есть идеи?

1 Ответ

1 голос
/ 27 октября 2011

Если я правильно понял, я полагаю, что вы можете создать свою собственную функцию, которая принимает некоторые переменные, а внутри нее делать некоторые замены и т. Д.

CREATE FUNCTION MyReplace (Link nvarchar(4000), myVar nvarchar(500))
RETURNS nvarchar
DECLARE Result nvarchar(4000)
--create some replacing logic here, call REPLACE function etc: 
--Result=...
RETURN Result

Позже вызовите эту функцию в своем запросе, передав два параметра- исходная ссылка и ваша переменная.

Однако я не уверен, что это хорошая практика, как было упомянуто выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...