mysql-sql-第五周

本文介绍了在SQL学习过程中,通过一系列基础查询练习,如统计李姓老师数量、男女学生人数、特定条件下筛选学生等,以及如何使用GROUPBY和HAVING进行复杂数据分析。学习者在1月至3月间,每天投入大约一小时,每周发布一次学习成果,关注于成绩表的关联查询和平均成绩计算。
摘要由CSDN通过智能技术生成

学习目标:

sql

学习内容:

做一些练习题,从简单到难
50题目参照的这个博客http://t.csdnimg.cn/caZfX,有改动,根据表的实际数据来的

下面是建立的四张表
第一张课程表
在这里插入图片描述
第二张教师表
在这里插入图片描述
第三张学生表
在这里插入图片描述
第四张成绩表(这里做了分页)
在这里插入图片描述

1.查询「李」姓老师的数量
分析题目:使用count()和模糊查询
select count() from teacher where name like ‘哈%’;
在这里插入图片描述
2.查询男生、女生人数
分析题目:使用count()和group by 分组
select gender ‘性别’ , count() ‘数量’ from students group by gender;
在这里插入图片描述
3.查询名字中含有「2」字的学生信息
分析题目:使用模糊查询
selectfrom students where name like ‘%2%’;
在这里插入图片描述
4.查询同名同性学生名单,并统计同名人数
分析题目:使用count()和group by 分组
select name,gender,count(
) from students group by name,gender order by gender;
在这里插入图片描述
呀,没有同名的,插入一组数据
在这里插入图片描述
重新查询,okk
在这里插入图片描述
看了一下参考答案,有having,修正一下
select name,gender,count() from students group by name,gender having count()>1 ;
在这里插入图片描述
5.查询 2001 年出生的学生名单
分析题目:模糊查询
select*from students where birthday like ‘%2001%’;
在这里插入图片描述
参考答案
select *from student where year(birthday) = 1990;

6.查询平均成绩大于等于 60 的所有学生的学号、姓名和平均成绩
分析题目:group by 、avg()
select students.stunm,students.name,avg(score.tscore) from students,score group by students.stunm,students.name having avg(score.tscore)>=60;
在这里插入图片描述
参考答案
select students.stunm, students.name, AVG(score.tscore) as aver from students, score where students.stunm=score.stunm group by students.stunm having aver >=60;

学习时间:

1月-3月,每天一小时左右

学习产出:

一周一发

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值