【问题标题】:Remove invisible backspace characters from mysql data从 mysql 数据中删除不可见的退格字符
【发布时间】:2017-01-18 03:04:22
【问题描述】:

我的数据集中有以下隐形字符

我相信是这个角色

http://www.fileformat.info/info/unicode/char/0008/index.htm

如何删除它?我试过了

UPDATE events SET `value` = TRIM(REPLACE(`value`, CONVERT(char(8) USING hp8), ''))

【问题讨论】:

    标签: mysql hidden-characters


    【解决方案1】:

    文字退格字符的 MySQL 转义序列是 \b

    请参阅此处的“特殊字符转义序列”:

    http://dev.mysql.com/doc/refman/5.7/en/string-literals.html


    如果我需要从字符串列中删除该字符,我会使用如下表达式:

     REPLACE(foo,'\b','')
    

    在尝试 UPDATE 之前,我会在 SELECT 语句中测试该表达式,例如

    SELECT t.foo
         , REPLACE(t.foo,'\b','')` AS new_foo
      FROM mytable t
     WHERE t.foo LIKE '%\b%'
    

    【讨论】:

    • 这似乎影响了很多行,但不幸的是并没有摆脱它:(
    猜你喜欢
    • 1970-01-01
    • 2011-07-15
    • 1970-01-01
    • 2015-12-17
    • 2011-09-12
    • 2022-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多