如何从MySQL中的数据行中删除新的行字符?

我可以遍历PHP脚本中的所有行,然后执行

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

并修剪可以删除\ n

但是我只是想知道在一个查询中是否可以做同样的事情呢?

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

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

谢谢

(PS:我可以testing它,但是表格很大,不想乱用数据,所以只是想,如果你之前testing过这样的东西)

你的语法是错误的:

 update mytable SET title = TRIM(TRAILING '\n' FROM title) 
 UPDATE test SET log = REPLACE(REPLACE(log, '\r', ''), '\n', ''); 

为我工作。

而它的相似,它也会摆脱\ r \ n

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

1)用空格replace所有新的行制表符。

2)删除所有前导和尾随空格。

  UPDATE mytable SET `title` = TRIM(REPLACE(REPLACE(REPLACE(`title`, '\n', ' '), '\r', ' '), '\t', ' ')); 

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

以上是罚款。

 UPDATE mytable SET title=TRIM(REPLACE(REPLACE(title, "\n", ""), "\t", "")); 

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

 UPDATE table_name SET col_name = TRIM(TRAILING '\r' FROM col_name) 

我的2美分。

为了摆脱我\ n的我需要做一个\\ n。 希望能帮助别人。

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