数据库实验三

本文数据集见实验一

实验目的:

  • 掌握基本的SELECT查询及其相关子句的使用。
  • 掌握复杂的SELECT查询,如多表查询、子查询、连接和联合查询。

1.在KC表中查询学分低于3的课程信息,并按课程号升序排列;

select * from KC where KC.学分 < 3 order by 课程号 asc;

在这里插入图片描述
不幸的是,KC表中所有学分都大于等于3,查询结果为空。

2.在XS_KC表中按学号分组汇总学生的平均分,并按平均分的降序排列;

select 学号,AVG(成绩) as 平均分 from XS_KC group by 学号 order by 平均分 desc;

在这里插入图片描述
3.在XS_KC表中查询选修了3门以上课程的学生学号;

SELECT 学号 FROM XS_KC  GROUP BY  学号 HAVING COUNT(学号)>3;

在这里插入图片描述
查询结果为空,如果你不相信这个查询结果当然也可以把XS_KC表打印出来进行对比。

注意: 此处使用了HAVING,如果第一次见,希望你可以搜索它与WHERE的区别。

在这里插入图片描述
4.按学号对不及格的成绩记录进行明细汇总;

select * from XS_KC where 成绩<60;

在这里插入图片描述
5.分别用子查询和连接查询,求107号课程不及格的学生信息;
子查询:

select 学号,姓名,联系电话  from  XSQK where 学号 in (select 学号 from XS_KC where 课程号 = '107' and 成绩 < 60);

在这里插入图片描述
对比XS_KC表也可以发现选修107课程的学生全部都及格了。
连接查询:

select XSQK.学号,姓名,联系电话 from XSQK join XS_KC on XSQK.学号=XS_KC.学号 where 课程号='107' and 成绩<60;

在这里插入图片描述
6.用连接查询在XSQK表中查询住在同一寝室的学生,即其联系电话相同;

select A.学号,A.姓名,A.联系电话 from XSQK A join XSQK B on A.联系电话=B.联系电话 where A.学号 != B.学号;

在这里插入图片描述
7.查询XSQK表中所有的系名;

select distinct 所在系 as 系名 from XSQK;

在这里插入图片描述
8.查询有多少同学选修了课程;

select distinct 学号 from XS_KC;

在这里插入图片描述
9.查询有多少同学没有选课;

select 学号 from XSQK where(not exists(select * from XS_KC where XS_KC.学号 = XSQK.学号));

在这里插入图片描述
10.查询与杨颖同一个系的同学姓名;

select 姓名,所在系 from XSQK where 所在系=(select 所在系 from XSQK where 姓名='杨颖');

在这里插入图片描述
11.查询选修了课程的学生的姓名、课程名与成绩;

select XSQK.姓名,KC.课程名,XS_KC.成绩 from XSQK,XS_KC,KC where(XS_KC.学号=XSQK.学号 and XS_KC.课程号=KC.课程号);

在这里插入图片描述

12.统计每门课程的选课人数和最高分;

select 课程号,count(课程号) as 选课人数,max(成绩) as 最高分 from XS_KC group by 课程号;

在这里插入图片描述
13.统计每个学生的选课门数和考试总成绩,并按选课门数的降序排列;

select XS_KC.学号,姓名,count(课程号) as 选课门数,count(成绩) as 考试总成绩 from XS_KC,XSQK where XS_KC.学号=XSQK.学号 group by XS_KC.学号 order by 选
课门数 desc;

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值