MySQL中去除欄位中的回車符和換行符
阿新 • • 發佈:2018-11-09
今天處理資料的時候,將Excel資料匯入MySQL後,通過SQL語句卻查不到需要的資料,後來找到一篇帖子解決了這個問題,原文地址:https://blog.csdn.net/u012586848/article/details/50997865,內容如下:
問題:
在使用【 load data infile 'D:/node.txt' into table node fields terminated by '\t'; 】語句批量匯入如下圖所示的aaa.txt中的資料到tb.table表中後,最後一個欄位中預設包含了換行符或回車符。
匯入資料後,node表內容如下所示:
從直觀上看不出匯入後的資料有什麼問題,但如果執行查詢語句【 select * from node where nodeY='7040'; 】卻查詢不出內容。
原因是從txt、excel或csv檔案匯入資料到MySQL後,最後一個欄位中的內容包含了換行符,因此查詢不出所對應的內容。
解決方法:
執行SQL語句:【 UPDATE tad.node SET nodeY = REPLACE(REPLACE(nodeY, CHAR(10), ''), CHAR(13), '');
利用replace()函式將換行符【char(10)】和回車符【char(13)】替換為空串,再次查詢後可以得到正確結果。