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';

显示结果:

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)

返回值为:移动

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值