BDA初级分析——用SQL筛选数据

一、用SQL对数据分组

GROUP BY


Group by,按...分组
作用:根据给定字段进行字段的分组,通常和聚合函数配合使用,实现分组的分析

写法:select ...from ...group by 字段名 (也可以是多个字段)

BDA初级分析——用SQL筛选数据_第1张图片

 GROUP BY的逻辑

SELECT gender,COUNT(user_id) FROM users GROUP BY gender;

BDA初级分析——用SQL筛选数据_第2张图片

二、用SQL筛选数据

 WHERE


Where,在哪儿
作用:对数据按照特定的条件去进行筛选,找到符合条件的数据

写法 :select ...from ... where 条件

 AND/OR,多重条件的组合


AND,且;OR,或
作用:多个条件以“且”“或”的方式连接,进行条件的约束

写法:select ...from ... where 条件1 and/or 条件2(如果有更多条件,可继续补充)

BDA初级分析——用SQL筛选数据_第3张图片

 操作符(operator )


等于=
大于>
小于<
不等于<>或!=
大于等于>=
小于等于<=

 IS NULL


is null:字段为空值

ls not null:字段不为空值

 IN


in : 在...之中
作用:in可以看作是or和=的组合,但写法更加简便

写法 :IN(值1,值2,值3...值n)

 

 BETWEEN


between:在...之间
作用:找出两个值之间的数据

写法:BETWEEN 值1AND 值2

 

 LIKE


like : 类似,近似通配符 :%
作用:实现模糊查询

写法 :like要查找的内容+%的组合,%的用法类似Excel中的*

 通配符位置带来的区别

BDA初级分析——用SQL筛选数据_第4张图片

 HAVING,对聚合后的结果做筛选


having:有
作用:对聚合后的结果做筛选,找到符合条件的结果

写法:SELECT...( 这里有聚合函数)FROM ...GROUP BY ...HAVING 条件(这里的条件针对聚合函数)

 ORDER BY


Order by: 按照..排序
作用:对显示的结果按照字段进行大小排序

写法:SELECT...FROM ...ORDER BY字段名(这里也可以是多个字段

BDA初级分析——用SQL筛选数据_第5张图片

 BDA初级分析——用SQL筛选数据_第6张图片

三、随堂练习

BDA初级分析——用SQL筛选数据_第7张图片

 正确答案: 正确 
解析:
WHERE语何一般位置在FROM的后面

BDA初级分析——用SQL筛选数据_第8张图片

 正确答案: 错误
解析:

注意区分HAVING与WHERE,在本题里,是对聚合后的结果做筛选,因此应当使用HAVING

BDA初级分析——用SQL筛选数据_第9张图片

 正确答案: 错误 
解析:
GROUP BY应该在FROM之后

BDA初级分析——用SQL筛选数据_第10张图片

 正确答案:错误
解析:

筛选的变量满足其中一个值就属于满足条件的情况下,可以用IN简写,

但下面这些情况下,IN都无法代替OR的功能:

SELECT*FROM orders WHERErev>0 OR units>0;
SELECT*FROM ordersWHERE rev<100 0R rev>1000

BDA初级分析——用SQL筛选数据_第11张图片

 正确答案: AC 
解析:
AND表示且,需要同时满足AND两边的条件:

OR表示或,即满足任一条件即可:

BETWEEN代表在两者之间,且包含两端:

IN表示在列出的这些值中在这里即代表=0或=1000

BDA初级分析——用SQL筛选数据_第12张图片

 正确答案: 正确 
解析:
注意区分HAVING与WHERE,在本题里,WHERE筛选的仍然是user id这个原始数据中存在的字段且位置在GROUP BY前,而并非对聚合后的结果做筛选

BDA初级分析——用SQL筛选数据_第13张图片

 正确答案: 正确
解析:

注意区分HAVING与WHERE,在本题里,是对聚合后的结果做筛选,因此应当使用HAVING

BDA初级分析——用SQL筛选数据_第14张图片

正确答案:C
解析:

在SQL语句中,%代表通配符,可以代替任何字段,且需要和LIKE搭配使用

BDA初级分析——用SQL筛选数据_第15张图片

 正确答案: BCD
解析:
NULL代表了数据的缺失,它不是0,也不是空格,只能用IS NULL 来表达

BDA初级分析——用SQL筛选数据_第16张图片

 正确答案: 错误 
解析:
默认是升序排列,如果需要降序排列,需要在ORDER BY 结尾增加DESC

BDA初级分析——用SQL筛选数据_第17张图片

 正确答案: 正确 
解析:
WHERE语句就是SQL语句中的筛选语句

你可能感兴趣的:(BDA初级分析,sql,数据库,用SQL筛选数据,大数据)