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