sql 条件求和_SQL第三关 汇总分析

建立了数据,简单查询,接下来就是汇总分析了,对于汇总分析,要认识的概念是函数:对于excel来说,函数是必备的技能,SQL也一样,接下来就是几个简单的函数练习。

count:求某列的行数;

sum:对某列数据求和(只能对数值类型的列计算);

avg:求某列数据的平均值(只能对数值类型的列计算);

max:求某列数据的最大值;

min:求某列数据的最小值。

函数练习:

10f60d425852d11f85debcb9c25d03ae.png
查询课程为0002的总成绩

8f73b3605c90b30de754f9676a61ef48.png
查询选了课程的学生人数

group by 分组函数练习:

4a3ff416a4f6e93075ba6fc068bf42f2.png
查询各科成绩最高和最低的分

d12f5678f2785e2a5b93e3709981de96.png
查询每门课程被选修的学生数

8b35818614237f461c8af63685ba1229.png
查询男生、女生人数

having 对分组结果指定条件练习:

79816afc0dfa4016242e79757f56b43a.png
查询平均成绩大于60分的学生学号和平均成绩

c450f52333b93bd4da715a1ebe52a239.png
查询至少选修两门课程的学生学号

9ee85803fdecc5f10c6f06de252271ba.png
查询同名同姓学生名单并统计同名人数

SQL解决业务问题练习:

ec81bc656a44609891c6bda7bff19927.png
查询不及格的课程并按课程号从大到小排列

ceef121993adba73f7a4e275d4f71a0a.png
查询每门课程的平均成绩,结果按平均成绩升序排列。平均成绩相同时,按课程号降序排列;

心得体会:

这次的学习多少会拿来和excel来比较,当然方式方法完全不一样,不过思路还是相同的,对比之后更加容易理解SQL,比如,我在excel中求和最经常使用到的是SUMIF;我想如果用SQL来转换这个函数,也是挺好玩的。

a561575e6e3e5d8216c0f4743f66a2d8.png
数据表

求各学生的总成绩

excel的函数就是:=SUMIF(A:A,F2,C:C)

9599865680eaff29b5b0d4cd41d05f08.png

SQL操作是:

59da8116e74d4dcf2fa22e97295cbcce.png

SQL比较高级的感觉来了,就是excel要进行下一步动作,就要开始处理数据,而SQL直接加语句就可以了,比如,现在找出总成绩大于200的学生,excel就比较麻烦了,当然有很多种方式,比如用IF函数,设置条件等,但是SQL就比较简单了,直接加一句having 总成绩>200

e3f93e7b17a2f50aab73dd56cd5bc988.png

本关操作错误汇总:

42ba7856b4c1e6049f73705f763ad048.png
函数sum打成sun,不细心的结果

f0be4a22903ae89f844e420612efc58c.png
如果没有用AS命名的话,出来的结果就是指令名

1a9e5d199ce519d5394e7fd701ff9f4c.png
如果不分组,默认只会出来第一个
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值