数据库系统原理实验报告-SQL查询语句_第1页
数据库系统原理实验报告-SQL查询语句_第2页
数据库系统原理实验报告-SQL查询语句_第3页
数据库系统原理实验报告-SQL查询语句_第4页
数据库系统原理实验报告-SQL查询语句_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.数据库系统原理实验报告姓名:xxx学号:xxxxxxxx专业:xxxxx日期:xxxxxLab2一、实验目的进一步熟悉关系数据库标准语言SQL。二、实验环境1) Windows 102) SQL Server 2017三、实验内容给定如学生表、课程表和学生作业表所示的信息。表1 学生表学号姓名性别专业班级出生日期联系电话0433张艳女生物041986-9-130496李越男电子041984-2-2313812900529赵欣男会计051984-1-2713502220531张志国男生物051986-9-1013312560538于兰兰女生物051984-2-2013312000591王丽丽女

2、电子051984-3-2013320800592王海强男电子051986-11-1表2 课程表课程号课程名学分数学时数任课教师K001计算机图形学2.540胡晶晶K002计算机应用基础348任泉K006数据结构464马跃先M001政治经济学464孔繁新S001高等数学348赵晓尘表3 学生作业表课程号学号作业1成绩作业2成绩作业3成绩K0010433607575K0010529707060K0010531708080K0010591809090K0020496808090K0020529707085K0020531808080K0020538657585K0020592758585K00605

3、31808090K0060591808080M0010496707080M0010591657575S0010531808080S00105386080写出如下SQL语句:1查询数据库中有哪些专业班级。(5分)Sql语句:SELECT 专业班级FROM 学生表;查询结果截图:2查询在1986年出生的学生的学号、姓名和出生日期。(5分)Sql语句:SELECT 学号,姓名,出生日期FROM 学生表 WHERE 出生日期 LIKE 1986%;查询结果截图:3查询05级的男生信息。(5分)Sql语句:SELECT *FROM 学生表WHERE 学号 LIKE 05% AND 性别 = 男; 查询结

4、果截图:4查询没有作业成绩的学号和课程号。(5分)Sql语句:SELECT 学号,课程号FROM 学生作业表WHERE 作业1成绩 IS NULL OR 作业2成绩 IS NULL OR 作业3成绩 IS NULL;查询结果截图:5查询选修了K001课程的学生人数。(5分)Sql语句:SELECT COUNT(DISTINCT 学号)FROM 学生作业表WHERE 课程号 =K001;查询结果截图:6查询数据库中共有多少个班级。(5分)Sql语句:SELECT COUNT(DISTINCT 专业班级)FROM 学生表;查询结果截图:7查询选修三门以上(含三门)课程的学生的学号和作业1平均分、作

5、业2平均分和作业3平均分。(5分)Sql语句:SELECT 学生作业表.学号,AVG(作业1成绩),AVG(作业2成绩),AVG(作业3成绩)FROM 学生表,学生作业表WHERE 学生表.学号 = 学生作业表.学号GROUP BY 学生作业表.学号HAVING COUNT(*) 2;查询结果截图:8查询于兰兰的选课信息,列出学号、姓名、课程名。(5分)Sql语句:SELECT 学生作业表.学号,姓名,课程名FROM 学生表,学生作业表,课程表WHERE 姓名 = 于兰兰 AND 学生表.学号 = 学生作业表.学号 AND 课程表.课程号 = 学生作业表.课程号;查询结果截图:9. 查询与“张

6、志国”同一班级的学生信息(使用连接查询和子查询方式两种方式)。(10 )1) 连接查询:Sql语句:SELECT 学生表1.*FROM 学生表 AS 学生表1,学生表 AS 学生表2WHERE 学生表2.姓名=张志国 AND 学生表1.专业班级=学生表2.专业班级;查询结果截图:2) 子查询:Sql语句:SELECT *FROM 学生表WHERE 专业班级 = (SELECT 专业班级 FROM 学生表 WHERE 姓名 = 张志国);查询结果截图:10. 查询比“计算机应用基础”学时多的课程信息(使用连接查询和子查询方式两种方式)。(10分)1) 连接查询:Sql语句:SELECT 课程表1

7、.*FROM 课程表 AS 课程表1,课程表 AS 课程表2WHERE 课程表2.课程名 = 计算机应用基础 AND 课程表1.学时数课程表2.学时数;查询结果截图:2) 子查询:Sql语句:SELECT *FROM 课程表WHERE 学时数(SELECT 学时数 FROM 课程表 WHERE 课程名 = 计算机应用基础);查询结果截图:11. 查询选修课程号为K002的学生的学号、姓名(使用连接查询、普通子查询、相关子查询、使用exists关键字的相关子查询四种方式)。(20分)1) 连接查询:Sql语句:SELECT 学生表.学号,学生表.姓名FROM 学生作业表,学生表WHERE 学生作

8、业表.课程号 = K002 AND 学生作业表.学号=学生表.学号;查询结果截图:2) 普通子查询:Sql语句:SELECT DISTINCT 学生表.学号,学生表.姓名FROM 学生作业表,学生表WHERE 学生表.学号 IN( SELECT 学生表.学号 FROM 学生作业表 WHERE 学生作业表.课程号 = K002 AND 学生作业表.学号=学生表.学号)查询结果截图:3) 相关子查询:Sql语句:SELECT DISTINCT 学生表.学号,学生表.姓名FROM 学生表,学生作业表WHERE 学生表.学号 IN (SELECT 学生作业表.学号 FROM 学生作业表 WHERE 学

9、生作业表.课程号=K002)查询结果截图:4) 使用exists关键字的相关子查询:Sql语句:SELECT DISTINCT 学生表.学号,学生表.姓名FROM 学生作业表,学生表WHERE EXISTS ( SELECT * FROM 学生作业表 WHERE 学生作业表.课程号 = K002 AND 学生作业表.学号=学生表.学号)查询结果截图:12. 查询没有选修K001和M001课程的学号、课程号和三次成绩(使用子查询)。(20分)Sql语句:SELECT DISTINCT 学号,课程号,作业1成绩,作业2成绩,作业3成绩FROM 学生作业表WHERE 学号 NOT IN( SELECT 学号 FRO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论