MySQL数据库设计及SQL语句(二)

本篇文章主要讲解通过SQL语句进行数据预处理的操作。包括正则表达式、数据的截取、分割以及注释查询内容。

1.将多属性字段分割成多个字段

示例数据:"中国 台湾",或者"中国/台湾",需要将"中国"和"台湾"提取出来形成新的两个字段。

这个时候就需要用到MySQL的substring_index(字段/字符串, 分割符, 位置)函数

代码:

SELECT SUBSTRING_INDEX('中国 台湾', ' ', 1) as 国家,  SUBSTRING_INDEX('中国 台湾', ' ', -1) as 省市

结果为:

 2.查询表格注释内容

当多字段存在时,单纯的观看列名不能直接理解该字段的含义,这个时候在数据库设计时,写好注释,然后查询注释就显得十分重要。

代码:

select COLUMN_NAME as 字段名,column_comment as 注释 
	from INFORMATION_SCHEMA.Columns where table_name='tel2';

显示结果:

MySQL数据库设计及SQL语句(二)_第1张图片

3.MySQL正则表达式

适用条件:在数据清洗过程中,当我们需要查询某个字段中全含有数值或中文的记录时,使用like查询就显得不可行。所以这个时候就需要适用REGEXP()函数

使用说明: 字符串/字段 REGEXP '正则表达式'

返回值为0,1,分别代表False和True

中文、字母和数值型数据,分别为[u0391-uFFE5]、[a-z]|[A-Z]、[0-9]

代码:

SELECT '130A' REGEXP '[0-9]'

显示结果:

4.MySQL字符串的截取

格式:select substring(‘字符串’, 起始位置, 长度)

示例代码:

SELECT SUBSTRING('移动152',1,2)

返回值为:移动

 

你可能感兴趣的:(SQL)