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

一、用SQL对数据分组

GROUP BY


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

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

 GROUP BY的逻辑

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

二、用SQL筛选数据

 WHERE


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

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

 AND/OR,多重条件的组合


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

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

 操作符(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中的*

 通配符位置带来的区别

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


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

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

 ORDER BY


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

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

 

三、随堂练习

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

 正确答案: 错误
解析:

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

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

 正确答案:错误
解析:

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

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

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

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

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

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

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

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

 正确答案: 正确
解析:

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

正确答案:C
解析:

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

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

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

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肉肉肉肉肉肉~丸子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值