我想更新 SQL dB 中的数千条记录。
我的my_table中的post_content类似于:
blablabla htt*://vimeo.com/12345678 blablabla
或
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&byline=0&portrait=0" width="400" height="300" frameborder="0" webkitAllowFullScreen allowFullScreen></iframe>
问题是每个帖子的 12345678 都不同...我必须替换该数字之前的代码并在该数字之后添加代码。
替换数字之前的代码很容易,但是之后,我不知道该怎么做?如何使用替换功能:找到 htt*://vimeo/12345678 并指向数字后面并添加“?title=0&a...</iframe>。
有什么想法吗?
最佳答案
如果我理解得很好,我想你可以创建自己的函数,它接受一些变量并在其中进行一些替换等。
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
稍后,在查询中调用此函数,并传递两个参数 - 原始链接和变量。
但是,如上所述,我不确定这是否是一个好的做法。
关于mysql - 增强的 SQL 替换功能 - 能够处理可变部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7901287/