数据库系列之数据处理
所用到的数据表的结构如下:
数据表的内容如下:
1.插入一列固定值
有时候,我们除了要获取原始表中现有的数据。还想再查询结果中根据选取的数据特征插入一列固定值。其实现方法如下:
SELECT id, `name`,age<20 as label
FROM chapter5 WHERE age<20
result:
2.json序列解析
针对json格式存储的数据,可以按照如下办法进行解析。
2.1 获取json数据的value
SELECT id, `name`,JSON_EXTRACT(score, "$.数学") as "数学成绩"
FROM chapter5
result:
2.2 获取json数据的key
SELECT id, `name`,JSON_KEYS(score) as "科目"
FROM chapter5
result:
3.缺失值
从第3节开始所用到的数据表的结构如下:
数据表的内容如下:
3.1. 缺失值过滤
缺失值有空格、null和空值(用""表示空值)三种表现形式,前2种形式虽然也表示缺失值,但是在对应的单元格内是有值的,而后一种空值是没有值的,表示这个单元格什么都没有。
空值的过滤:
SELECT * FROM chapter6 WHERE profession !=""
result:
空格的过滤:
SELECT * FROM chapter6 WHERE profession !=" "
null的过滤
SELECT * FROM chapter6 WHERE profession is not NULL
3.2 缺失值填充
SELECT *, COALESCE(profession,"其他") FROM chapter6
result:
4.重复值处理
4.1 distinct
SELECT DISTINCT order_id, memberid FROM chapter6
result:
4.2 group by
SELECT order_id, memberid FROM chapter6 GROUP BY order_id, memberid
result:
5.数据类型转换
数据类型转换主要有以下两个方法: cast(value as type)
convert(value, type)
SELECT age, CAST(age as DECIMAL) decimal_age, CONVERT(age, CHAR) char_age FROM chapter6
result:
转载自:https://juejin.cn/post/7024678438938099725