一、背景
1.1 为什么要了解ASCLL码?
有些字符在数据库中无法被打出来,比如换行符,制表符等。这个时候可以用对应的ASCLL码来代替。
有时上传的数据看起来像是一个空格,实际上是个换行符,用空格则无法处理,换行符又无法打出。这时可以用ASCLL码来解决。
1.2 ASCLL码与字符对照表
参考:https://blog.csdn.net/yuanqingyu0123/article/details/6905447
1.3 ASCLL码与字符相互转化
二、数据准备
数据说明:
- Excel为底层数据,SQL为上传到数据库之后的数据
- 11位的手机号,被识别为12位;因为末尾有看不见的字符。
- 所在地的换行符在SQL中展示为空格。
三、处理数据
- 手机号修正为11位
- 将换行符修正为空格
3.1 判断ASCLL码值。
可以发现手机的末尾有制表符;所在地的中间有换行符。这些符号和空格看起来一致。如果不知道这一点,则会当成空格来处理。
3.2 修正数据
update [test].[cnblogs].[字符] set 手机=REPLACE(手机,CHAR(9),‘‘), -- 将制表符CHAR(9) 替换为空 所在地=REPLACE(所在地,CHAR(10),‘ ‘) -- 将换行符CHAR(10)替换空格
四、扩展
4.1 与其他函数连用
- 与like 和concat连用