数据库实验——SQL查询综合.doc

上传人:re****.1 文档编号:542986728 上传时间:2023-12-29 格式:DOC 页数:14 大小:371KB
返回 下载 相关 举报
数据库实验——SQL查询综合.doc_第1页
第1页 / 共14页
数据库实验——SQL查询综合.doc_第2页
第2页 / 共14页
数据库实验——SQL查询综合.doc_第3页
第3页 / 共14页
数据库实验——SQL查询综合.doc_第4页
第4页 / 共14页
数据库实验——SQL查询综合.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《数据库实验——SQL查询综合.doc》由会员分享,可在线阅读,更多相关《数据库实验——SQL查询综合.doc(14页珍藏版)》请在金锄头文库上搜索。

1、数据库原理与应用课程实验数据库原理与应用实验报告题目: SQL查询综合学号:_姓名:_教师:_实验题目SQL查询综合1、 实验内容以数据库更新实验中的数据为基础,使用SQL语句实现以下操作:1、列出所有不姓刘的所有的学生;2、列出姓“沈”且全名为3个汉字的学生;3、显示在1985年以后出生的学生的基本信息;(函数Year(GETDATE()可取得时间的年份);4、按照“性别、学号、姓名、院系”的顺序列出学生信息;5、查询课程名含有“数据”字串的所有课程基本信息;6、显示学号第八位和第九位是9的学生的学号、姓名、性别、年龄、院系;7、列出选修了1课程的学生,按成绩降序排列;8、列出同时选修1号课

2、程和2号课程的所有学生的学号;9、列出课程表中全部信息,按先修课的升序排列;10、列出年龄超过平均值的所有学生的名单,按年龄的降序显示;11、按照出生年份升序显示所有学生的学号、性别、出生年份及院系,在结果集中列标题分别指定为“学号、姓名、性别、出生年份、院系”;12、按课程号、成绩降序显示课程成绩在70-80之间的学生的学号、课程号及成绩;13、显示学生信息表中的学生总人数及平均年龄、在结果集中列报题分别指定为“学生总人数,平均年龄”;14、显示选修的课程数大于3的各个学生的选修课程数;15、按课程号降序显示选修各个课程的总人数、最高成绩、最低成绩及平均成绩;16、显示平均成绩大于20051

3、5001学生平均成绩的各个学生的学号、平均成绩;17、列出有两门以上课程(含两门)不及格的学生的学号及该学生的平均成绩;18、查询以数据_开头,且倒数第3个字符为结的课程的详细情况;19、查询名字中第2个字为阳的学生姓名和学生及选修的课程号、课程名;20、列出选修了“数学”或者“大学英语“的学生学号、姓名、所在院系、选修课程号及成绩;21、查询缺少成绩的所有学生的详细情况;22、查询与“张力“(假设姓名唯一)年龄不同的所有的学生的信息;23、查询所选课程的平均成绩大于张力的平均成绩的学生学号、姓名及其平均成绩;24、查询只选修一门课程的学生的学号、姓名、院系及成绩;25、至少选修数据库和数据结

4、构课程的学生的基本信息;26、查询只被一名学生选修的课程的课程号、课程名;27、选修了数据结构课程的学生学号和姓名;28、其他系年龄小于CS系某个学生的学生姓名、年龄和院系;29、 列出和张力在一个院系的学生的信息。2、 实验目的与要求掌握SQL查询语句3、 实验环境SQL Server或MySQL4、 实验结果与分析1、 列出所有不姓刘的所有的学生;select *from studentwhere Sname not like 刘%2、 列出姓“沈”且全名为3个汉字的学生;select *from studentwhere Sname like 沈_3、 显示在1985年以后出生的学生的基

5、本信息;(函数Year(GETDATE()可取得时间的年份);select *from studentwhere (Year(GETDATE()-Sage)19854、 按照“性别、学号、姓名、院系”的顺序列出学生信息;select Ssex 性别,Sno 学号,Sname 姓名,Sdept 院系from student5、 查询课程名含有“数据”字串的所有课程基本信息;select *from coursewhere Cname like %数据%6、 显示学号第八位和第九位是9的学生的学号、姓名、性别、年龄、院系;select *from studentwhere Sno like _99

6、7、 列出选修了1课程的学生,按成绩降序排列;select Sno,Gradefrom scwhere Cno=1order by Grade desc8、 列出同时选修1号课程和2号课程的所有学生的学号;select x.Snofrom sc x,sc ywhere x.Sno=y.Sno and x.Cno=1 and y.Cno=29、 列出课程表中全部信息,按先修课的升序排列;select *from courseorder by Cpno10、 列出年龄超过平均值的所有学生的名单,按年龄的降序显示;select *from studentwhere Sage(select avg(S

7、age)from student)order by Sage desc11、 按照出生年份升序显示所有学生的学号、性别、出生年份及院系,在结果集中列标题分别指定为“学号、姓名、性别、出生年份、院系”;select Sno 学号,Sname 姓名,Ssex 性别,2013-Sage 出生年份,Sdept 院系from studentorder by 2013-Sage12、 按课程号、成绩降序显示课程成绩在70-80之间的学生的学号、课程号及成绩;select Sno,Cno,Gradefrom scwhere Grade between 70 and 80order by Cno desc,G

8、rade desc13、 显示学生信息表中的学生总人数及平均年龄、在结果集中列报题分别指定为“学生总人数,平均年龄”;select count(Sno) 学生总人数,avg(Sage) 平均年龄from student14、 显示选修的课程数大于3的各个学生的选修课程数;select Sno,count(Sno)from scgroup by Snohaving count(Sno)315、 按课程号降序显示选修各个课程的总人数、最高成绩、最低成绩及平均成绩;select Cno,count(Sno) 总人数,max(Grade) 最高成绩,min(Grade) 最低成绩,avg(Grade)

9、 平均成绩from scwhere Sno is not NULL and Grade is not nullgroup by Cnoorder by cast(Cno as int) desc16、 显示平均成绩大于200515001学生平均成绩的各个学生的学号、平均成绩;select Sno,avg(Grade) 平均成绩from scgroup by Snohaving avg(Grade)(select avg(Grade) from sc where Sno=200515001)17、 列出有两门以上课程(含两门)不及格的学生的学号及该学生的平均成绩;select Sno,avg(G

10、rade) 平均成绩from scgroup by Snohaving sum(case when Grade=218、 查询以数据_开头,且倒数第3个字符为结的课程的详细情况;select *from coursewhere Cname like 数据_%结_escape19、 查询名字中第2个字为阳的学生姓名和学生及选修的课程号、课程名;select student.Sname,student.Sno,course.Cno,course.Cnamefrom student,course,scwhere student.Sno=sc.Sno and course.Cno=sc.Cno and

11、 student.Sname like _阳%20、 列出选修了“数学”或者“大学英语“的学生学号、姓名、所在院系、选修课程号及成绩;select student.Sno,student.Sname,student.Sdept,Cno,sc.Gradefrom student,scwhere student.Sno=sc.Sno and Cno in(select Cno from course where Cname=数学 or Cname=大学英语)21、 查询缺少成绩的所有学生的详细情况;select *from studentwhere Sno in(select Sno from s

12、c where Grade is NULL)22、 查询与“张力“(假设姓名唯一)年龄不同的所有的学生的信息;select *from studentwhere Sage not in(select Sage from student where Sname=张力)23、 查询所选课程的平均成绩大于张力的平均成绩的学生学号、姓名及其平均成绩;select student.Sno,student.Sname,avg(sc.Grade) 平均成绩from student,scwhere student.Sno=sc.SnoGroup by student.Sno,student.Snamehavi

13、ng(avg(Grade)(select avg(Grade) from sc,student where Sname=张力 and student.Sno=sc.Sno)24、 查询只选修一门课程的学生的学号、姓名、院系及成绩;select student.Sno,student.Sname,student.Sdept,sc.Gradefrom student,scwhere student.Sno=sc.Sno and sc.Sno in(select Sno from sc group by Sno having count(Sno)=1)25、 至少选修数据库和数据结构课程的学生的基本

14、信息;select *from studentwhere Sno in(select Sno from sc where Cno in (select Cno from course where Cname in (数据库, 数据结构)group by Sno having count(*) = 2)26、 查询只被一名学生选修的课程的课程号、课程名;select Cno,Cnamefrom coursewhere Cno in(select Cno from scgroup by Cno having count(*)=1)27、 选修了数据结构课程的学生学号和姓名;select Sno,Snamefrom studentwhere Sno in(select Sno from sc where Cno in(select Cno from course where Cname=数据结构)28、 其他系年龄小于CS系某个学生的学生姓名、年龄和院系;select Sname,Sage,Sdeptfrom studentwhere Sa

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号