0

我正在尝试提取一堆不同 youtube 嵌入代码的 ID 部分(11 个字符)。我已经在 excel 中成功完成了,但是文件太大而无法重新导入。这是我使用的excel公式:

=RIGHT(MID(E1,FIND("http",E1,1),36),11)

即我想要FIND“http”的第一个实例开始的地方,SELECT从那里开始 36 个字符,然后是结果SELECT的 11 个字符RIGHT

然后像这样运行 REPLACE ......

UPDATE wp_postmeta set `meta_value` = replace(`meta_value`, "<original content>", "<results of query>")
where meta_key = "_youtube"

我被困在第一部分 - 有什么想法吗?

4

2 回答 2

0

对我有用的好的解决方案是:

UPDATE wp_postmeta 
SET `meta_value` = replace(`meta_value`, meta_value, RIGHT(SUBSTRING(meta_value,LOCATE('http', meta_value),36),11) )
WHERE meta_key = "_youtube"
于 2013-11-08T09:00:33.640 回答
0

你在找这个吗?

UPDATE wp_postmeta
   SET meta_value = RIGHT(MID(meta_value, LOCATE('http', meta_value, 1) + 4, 36), 11)
 WHERE meta_key = '_youtube';

这是SQLFiddle演示

于 2013-11-08T08:56:54.327 回答