数据库实验四.docx
- 文档编号:29044178
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:14
- 大小:231.70KB
数据库实验四.docx
《数据库实验四.docx》由会员分享,可在线阅读,更多相关《数据库实验四.docx(14页珍藏版)》请在冰豆网上搜索。
数据库实验四
(1)一般简单查询
1、不带条件的查询指定字段(考虑去掉和不去掉重复值两种情况)
select课程编号from选课
selectdistinct课程编号from选课
2、查询某个表中的所有记录。
select*from院系
3、使用单个条件的简单查询select学号from选课where成绩<70
4、使用多个条件(OR关系)的查询select成绩from选课where学号='001'or学号='002'
5、使用多个条件(AND关系)的查询select课程名称,课程编号from课程where学时<40and学时>10
6、使用多个条件(混合AND和OR关系)的查询
select课程名称,课程编号from课程where学时<20or学时>30and责任教师='104'
7、使用带NOT运算的查询select姓名,性别from教师wherenot职称='教授'
8、使用BETWEEN···AND···的查询select学号,成绩from选课where成绩between80and100
9、使用NOT···BETWEEN···AND···的查询
select学号,成绩from选课where成绩notbetween60and100
10、使用LIKE运算符的字符串匹配查询select*from选课where学号like'%001%'
11、使用LIKE运算符的模板匹配查询select*from选课where学号like'00[7-9]'
12、查询空值和非空值的查询
select学号from学生where生源isnull
select学号from学生where生源isnotnull
13、结果要求排序的查询select*from选课orderby成绩
14、查询结果按多列排序,并分别要求升序和降序的查询select*from选课orderby成绩,学号desc
15、使用TOP显示前若干记录的查询selecttop5*from选课orderby成绩desc
16、使用TOP显示前若干记录的查询,如果有满足条件的并列记录一并显示selecttop8withties*from选课orderby成绩desc
(2)连接查询
17、两个关系的连接查询select*from院系join学生on学生.院系=院系.编号
18、带其他查询条件的两个关系的连接查询select*from院系join学生on学生.院系=院系.编号where生源='安徽'
19、多个关系(三个以上)的连接查询select*from院系join学生on学生.院系=院系.编号join选课on选课.学号=学生.学号where生源='安徽'
20、两个关系的广义笛卡尔积运算结果select*from教师crossjoin课程
21、根据两个关系的广义笛卡尔积运算结果得到两个关系进行自然连接的结果
select教师.教师编号,院系,姓名,性别,职称,专业,课程编号,课程名称,学时,课程性质from教师crossjoin课程
22、查询教师-课程信息,查询结果中包括教师姓名、职称、课程名称和课程性质等4个字段select姓名,职称,课程名称,课程性质from教师join课程
on课程.责任教师=教师.教师编号
23、查询教师-课程信息,查询结果中包括教师姓名、职称、课程名称和课程性质等4个字段,要求结果中列出所有教师信息(即包括不是任何课程责任教师的教师信息)。
select姓名,职称,课程名称,课程性质from教师LEFTjoin课程
on课程.责任教师=教师.教师编号
24、查询教师-课程信息,查询结果中包括教师姓名、职称、课程名称和课程性质等4个字段,要求结果中能够反映目前没有确定责任教师的课程信息
select姓名,职称,课程名称,课程性质from教师rightjoin课程
on课程.责任教师=教师.教师编号
25、查询教师-课程信息,查询结果中包括教师姓名、职称、课程名称和课程性质等4个字段,要求结果中既能够反映目前不是责任教师的教师信息,又能反映目前没有确定责任教师的课程信息
select姓名,职称,课程名称,课程性质from教师fulljoin课程
on课程.责任教师=教师.教师编号
(3)嵌套查询
26、使用IN运算的简单嵌套查询
select*from院系where编号in(select院系from学生where生源='安徽')
27、使用NOTIN运算的简单嵌套查询
select*from院系where编号notin(select院系from学生where生源='安徽')
28、使用关系运算(如等于)的简单嵌套查询
Select课程编号from课程where学时<(select学时from课程where课程编号='02')
29、使用ANY或SOME的简单嵌套查询
select*from课程where成绩<=any(select成绩from选课where学号='010')
30、使用ALL的简单嵌套查询
Select课程编号from课程where学时>=all(select学时from课程where课程性质='专业基础')
32、设计两个内外层互相关的嵌套查询
select*from选课where成绩=(selectmax(成绩)from选课where学号=学号)
33、使用EXISTS的嵌套查询
select*from选课whereexists(select*from课程where选课.课程编号=课程.课程编号)
34、使用NOTEXISTS的嵌套查询
select成绩from选课wherenotexists(select*from学生where选课.学号=学生.学号)
(4)汇总和分组查询
35、使用COUNT统计数目的查询selectcount(姓名)from学生
36、使用SUM计算合计的查询selectsum(学时)from课程
37、一次完成求和、计数、计算平均值的查询selectsum(成绩),count(*),avg(成绩)from选课
40、查询每个学生的平均成绩selectavg(成绩)from选课groupby学号
42、查询至少有1门专业基础课程考试成绩的每个学生的平均成绩
selectavg(成绩)from选课where课程编号in(select课程编号from课程where课程性质='专业基础')groupby学号
43、设计1个使用COMPUTE···BY和COMPUTE的查询
select*from选课orderby学号computeavg(成绩),sum(成绩)by学号
computeavg(成绩),sum(成绩)
44、设计1个使用COMPUTE···BY的查询
select*from课程orderby课程编号computeavg(学时),sum(学时)by课程编号
45、设计1个使用COMPUTE的查询select*from选课computeavg(成绩),sum(成绩)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验