代码之家  ›  专栏  ›  技术社区  ›  TigerTiger

如何在mysql中删除数据行中的新行字符?

  •  74
  • TigerTiger  · 技术社区  · 15 年前

    UPDATE mytable SET title = "'.trim($row['title']).'" where id = "'.$row['id'].'";

    但我只是想知道是否可以在一个查询中完成同样的操作?

     update mytable SET title = TRIM(title, '\n') where 1=1
    

    行吗?然后我就可以执行这个查询,而不需要循环!

    谢谢

    (注:我可以测试它,但表非常大,不想弄乱数据,所以如果您以前测试过类似的东西,请考虑一下)

    7 回复  |  直到 9 年前
        1
  •  124
  •   John M    4 年前

    您的语法错误:

    update mytable SET title = TRIM(TRAILING '\n' FROM title)
    

    如果换行符位于字段的开头:

    update mytable SET title = TRIM(LEADING '\n' FROM title)
    
        2
  •  129
  •   Łukasz Rysiak    12 年前
    UPDATE test SET log = REPLACE(REPLACE(log, '\r', ''), '\n', '');
    

    为我工作。

    虽然它很相似,但它也将删除\r\n

    http://lists.mysql.com/mysql/182689

        3
  •  17
  •   Geo pregmatch    10 年前

    新线 标签

    2) 全部删除 领先和落后

     UPDATE mytable SET `title` = TRIM(REPLACE(REPLACE(REPLACE(`title`, '\n', ' '), '\r', ' '), '\t', ' '));
    
        4
  •  9
  •   Anptk    9 年前

    update mytable set title=trim(replace(REPLACE(title,CHAR(13),''),CHAR(10),''));

    以上是工作的罚款。

        5
  •  7
  •   Ulysnep Richard Hutta    9 年前

    从Excel导入时删除尾部返回。当您执行此操作时,您可能会收到一个没有WHERE的错误;忽略并执行。

    UPDATE table_name SET col_name = TRIM(TRAILING '\r' FROM col_name)
    
        6
  •  2
  •   Risse    15 年前
    UPDATE mytable SET title=TRIM(REPLACE(REPLACE(title, "\n", ""), "\t", ""));
    
        7
  •  2
  •   jay_mziray    4 年前

    玩上面的答案,这个对我来说很有用

    REPLACE(REPLACE(column_name , '\n', ''), '\r', '')
    
        8
  •  0
  •   Darshan Montgomery    8 年前

    要清除我的\n,我需要执行\\n。希望这能帮助别人。

    update mytable SET title = TRIM(TRAILING '\\n' FROM title)
    
        9
  •  0
  •   Lue Inubashiri    5 年前

    UPDATE table_name SET field_name = TRIM(TRAILING '\n' FROM field_name);
    UPDATE table_name SET field_name = TRIM(TRAILING '\r' FROM field_name);
    UPDATE table_name SET field_name = TRIM(TRAILING '\r\n' FROM field_name);
    

    对于所有空白字符

    UPDATE table_name SET field_name = TRIM(field_name);
    UPDATE table_name SET field_name = TRIM(TRAILING '\n' FROM field_name);
    UPDATE table_name SET field_name = TRIM(TRAILING '\r' FROM field_name);
    UPDATE table_name SET field_name = TRIM(TRAILING '\r\n' FROM field_name);
    UPDATE table_name SET field_name = TRIM(TRAILING '\t' FROM field_name);
    

    阅读更多: MySQL TRIM Function