【问题标题】:Replacing forward slashes in mySQL REPLACE query替换 mySQL REPLACE 查询中的正斜杠
【发布时间】:2014-11-11 04:42:43
【问题描述】:

我要做的就是在我的一个表字段中替换任何出现的正斜杠 (/)。以下代码似乎不起作用:

UPDATE table SET numberClean = REPLACE(REPLACE(numberNotClean, '.', ''), '\/', '');

它目前正在我的 php 脚本中运行,我所有的替换查询(也包括转义字符)都正常工作。

任何帮助将不胜感激,谢谢!

【问题讨论】:

    标签: php mysql replace


    【解决方案1】:
    UPDATE table SET numberClean = REPLACE(numberClean, '/', '');
    

    【讨论】:

      【解决方案2】:

      正斜杠不需要转义

      UPDATE myTable SET fieldName=REPLACE(fieldName,'/','')
      

      您当前的代码将替换字符串中任何出现的\/。由于不需要转义正斜杠,因此 MySQL 将您的 \/ 视为只是一个没有任何特殊含义的字符串。

      Manual

      【讨论】:

      • 对于相反的情况:UPDATE tblBookList SET BookImageLocation=REPLACE(BookImageLocation,'\\','/') 注意双斜杠“\”
      【解决方案3】:

      MySQL 中的正斜杠没有特殊含义,这意味着您不应该转义它们:

      UPDATE `table` 
      SET `numberClean` = REPLACE(
        REPLACE(
          `numberNotClean`, 
          '.', 
          ''
        ), 
        '/', 
        ''
      );
      

      【讨论】:

        【解决方案4】:

        你试过了吗

        UPDATE table SET numberClean = REPLACE(REPLACE(numberNotClean, '.', ''), '/', '');
        请看下面的网址 Replace / to _ in mysql replace

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-05-12
          • 1970-01-01
          • 1970-01-01
          • 2023-03-10
          • 1970-01-01
          • 2022-11-25
          • 1970-01-01
          相关资源
          最近更新 更多