【问题标题】:SQL string replace wildcardSQL 字符串替换通配符
【发布时间】:2012-02-01 16:02:07
【问题描述】:

我有一个带有 Y 列的表 X,其中包含如下文本:

Click <a href=""http://www.stackoverflow.com"">here</a> to redeem

我需要把它变成:

Click <a href="http://www.stackoverflow.com">here</a> to redeem

即。去掉多余的一对引号

“url”之外的文本可以是任何内容。

是这样的吗?

Update X SET Y = REPLACE(Y, '""%""', '"%"' );

【问题讨论】:

    标签: sql replace


    【解决方案1】:

    REPLACE 将所有出现的第二个参数替换为第三个参数:

    update X set Y = replace(Y, '""', '"')
    

    【讨论】:

      【解决方案2】:
      select replace('Click <a href=""http://www.stackoverflow.com"">here</a> to redeem','""','"')  
      

      在实际进行更新之前,我使用 select 来检查更新将要做什么。

      【讨论】:

        【解决方案3】:

        您需要将“”替换为“,所以这样做:

        Update X SET Y = REPLACE(Y, '""', '"')
        

        【讨论】:

          【解决方案4】:

          您需要将“”替换为“,所以这样做:

          Update X SET Y = REPLACE(Y, '""', '"') WHERE y LIKE '""%""';
          

          请谨慎使用,因为它还会替换如下文本:

          Click <a href="http://www.stackoverflow.com">""here""</a> to redeem
          

          进入

          Click <a href="http://www.stackoverflow.com">"here"</a> to redeem
          

          【讨论】:

            猜你喜欢
            • 2012-11-21
            • 1970-01-01
            • 1970-01-01
            • 2019-04-16
            • 1970-01-01
            • 2014-02-11
            • 2016-10-08
            • 2016-11-24
            • 1970-01-01
            相关资源
            最近更新 更多