MySQL replace替换空格、Tab、回车等特殊字符的解决方法
MySQL的函数replace(str, search_str, replace_str)
,用于从str
中查找匹配search_str
并替换为replace_str
。
通过这个函数可以移除内容中的空格,比如:
update table_a set column_a = replace(column_a, ' ', '')
但是对于tab
、回车换行等字符不能直接用文本,此时我们可以考虑使用ASCII码来处理:
- 空格的ASCII码为
char(21)
- tab的ASCII码为
char(9)
- 换行符的ASCII码为
char(10)
SQL替换语句为:
-- 移除空格
update table_a set column_a = replace(column_a, char(21), '');
-- 移除tab
update table_a set column_a = replace(column_a, char(9), '');
-- 移除替换换行符
update table_a set column_a = replace(column_a, char(10), '');
参考文章:
sql: 去除数据库表中tab、空格、回车符等特殊字符的解决方法 去除tab、空格、回车符等使用replace语句 按照ASCII码