mysql去除字段內容的空格和換行回車


MySQL 去除字段中的換行和回車符

解決方法:
          UPDATE tablename SET field = REPLACE(REPLACE(field, CHAR(10), ''), CHAR(13), '');
          char(10):  換行符
          char(13):  回車符

MySQL的trim函數沒辦法去掉回車和換行,只能去掉多余的空格,可以用MySQL的replace函數,解決掉這個問題,具體解決辦法如下: 

假設想要審核數據庫中內容為“我愛你 
”的短信息(注意內容后有換行)通過(status改變成1) 

之前的SQL語句是不起作用的 


UPDATE `tran` 
SET `status` = '1' 
WHERE `msg` = '我愛你';
修改之后的語句 
UPDATE `tran` 
SET `status` = '1' 
WHERE trim( replace( `msg`, '\r\n', ' ' ) ) = '我愛你';

把數據中的回車換行等替換成空格之后再trim掉,就達到目的了,雖然不是特別完美,但是由於沒辦法在用戶錄入的時候控制,所以只能出此下策,好在MySQL內置函數的效率還是很有保證的。 

UPDATE `tran` 
SET `status` = '1' 
WHERE trim( trim( 
BOTH '\r\n' 
FROM content ) ) = '我愛你'

用了兩個trim,這樣的好處是不會替換內容中間的換行和回車,只會處理頭尾的空格換行回車,相當於php中trim函數的作用了。  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM