[SQL]查詢及去除換行符號

參考網址:
MySQL 查询带有回车换行符的内容

MySQL 去除字段中的换行和回车符

MySQL查询带有回车换行符内容的方法:
select * from table where content like '%\r\n%';//或者 \n

108.11.16更新
新版的mysql換行符號只剩'\n'
所以下命令變成
SELECT * FROM `player` WHERE `player_name` like '%\n%'

php語法
str_replace(array("\r", "\n", "\r\n", "\n\r"), '', $str);

參考網址:標準之旅
參考網址:淺談mysql資料庫中的換行符與textarea中的換行符

 

解决方法:
UPDATE tablename SET field = REPLACE(REPLACE(field, CHAR(10), ''), CHAR(13), '');
UPDATE player SET player_engname = REPLACE(REPLACE(player_engname, CHAR(10), ''), CHAR(13), '') where player_id = 8
char(10):  换行符
char(13):  回车符

MySQL的trim函数没办法去掉回车和换行,只能去掉多余的空格,可以用MySQL的replace函数。

 

 

========================================
以下查詢不適用在mysql

參考網址:逍遙齋

SQL 查詢 換行符號
where id like '%'+char(10)+'%'

CHAR 可用於將控制字符插入字符串中。下表顯示了一些常用的控制字符。
控制鍵 值
Tab: CHAR(9)
換行: CHAR(10)
ENTER: CHAR(13)

Ex:
SELECT * FROM TABLE_NAME
WHERE 1=1 AND COLUMN_NAME LIKE '%'+CHAR(13)+'%'

update base_mapping set basename = replace(basename,Char(10),'')
update base_mapping set basename = replace(basename,Char(13),'')

本篇發表於 程式設計。將永久鏈結加入書籤。