SQL之ASCLL码

一、背景

1.1  为什么要了解ASCLL码?

有些字符在数据库中无法被打出来,比如换行符,制表符等。这个时候可以用对应的ASCLL码来代替。

有时上传的数据看起来像是一个空格,实际上是个换行符,用空格则无法处理,换行符又无法打出。这时可以用ASCLL码来解决。

 

1.2  ASCLL码与字符对照表

参考:https://blog.csdn.net/yuanqingyu0123/article/details/6905447

SQL之ASCLL码

 

 

 1.3  ASCLL码与字符相互转化

 SQL之ASCLL码

 

 

 

二、数据准备

 SQL之ASCLL码

 

 

数据说明:

  1.   Excel为底层数据,SQL为上传到数据库之后的数据
  2.  11位的手机号,被识别为12位;因为末尾有看不见的字符。
  3.  所在地的换行符在SQL中展示为空格。

 

三、处理数据

  • 手机号修正为11位
  • 将换行符修正为空格

 

3.1  判断ASCLL码值。

SQL之ASCLL码

 

 

 

 

  可以发现手机的末尾有制表符;所在地的中间有换行符。这些符号和空格看起来一致。如果不知道这一点,则会当成空格来处理。

 

3.2 修正数据

update  [test].[cnblogs].[字符] 
set 
手机=REPLACE(手机,CHAR(9),‘‘),           -- 将制表符CHAR(9) 替换为空
所在地=REPLACE(所在地,CHAR(10), )      -- 将换行符CHAR(10)替换空格

 

 

 

四、扩展

4.1  与其他函数连用

  • 与like 和concat连用

 

SQL之ASCLL码

上一篇:MySQL备份-mysqldump


下一篇:数据库