【问题标题】:SQL replace portion of a string counting in from search result [duplicate]SQL替换从搜索结果中计数的字符串部分[重复]
【发布时间】:2013-11-08 17:00:33
【问题描述】:

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

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

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

然后像这样运行 REPLACE...

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

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

【问题讨论】:

    标签: sql replace


    【解决方案1】:

    你在找这个吗?

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

    这里是SQLFiddle演示

    【讨论】:

    • 谢谢 - 效果也不错。
    【解决方案2】:

    对我有用的解决方案是:

    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"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-10
      • 2015-11-13
      • 2016-09-22
      • 2016-01-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多