educoder 数据库原理与应用 实验四 子查询

您所在的位置:网站首页 数据库原理与应用实验四 educoder 数据库原理与应用 实验四 子查询

educoder 数据库原理与应用 实验四 子查询

#educoder 数据库原理与应用 实验四 子查询| 来源: 网络整理| 查看: 265

实验四 子查询 数据结构说明第1关:子查询一第2关:子查询二第3关:子查询三第4关:带子查询的增删改

数据结构说明

表结构如下:

学生表:Student

字段名类型主码备注Snochar(10)Y学号Snamevarchar(20)姓名Ssexchar(2)性别Sagesmallint年龄Sdeptvarchar(20)所在系

课程表:Course

字段名类型主码备注Cnochar(10)Y课程号Cnamevarchar(20)课程名Cpnochar(10)先行课号Ccreditsmallint课程学分

学生选课表:SC

字段名类型主码备注Snochar(10)Y学号Cnochar(10)Y课程号Gradesmallint成绩 第1关:子查询一

任务描述 本关任务:子查询练习

相关知识 使用SQL语言中的 Select 语句。 使用子查询完成查询练习 SQL语句中关键词大小写不区分。考虑到本系统的测评规则,在题目中要求对列名小写的,请务必按要求书写,否则会评判为错误! 性别用’m’表示男,’f’表示女

实验完成要求 根据代码区的提示,将查询数据的SQL语句书写在对应的代码区中。 注:请务必将select子句中出现的列名小写,顺序必须和题目要求一致

1、查询CS系学生选择的课程,列出学号,课程号,成绩

2、查询没有选C06(课程号)课程的同学的学号,姓名,性别

3、查询成绩最高的选课信息,列出学号,课程号和成绩。

测试说明 书写查询语句后,直接测试。

sql语句 sql1:

USE CS_yx_DB GO SET NOCOUNT ON -- ********** Begin ********** -- -- ********** 此处写“1、查询CS系学生选择的课程,列出学号,课程号,成绩”的SQL语句 ********** -- select sno,cno,grade from Sc where Sno in(select Sno from Student where Sdept ='CS'); -- ********** End ********** -- GO

sql2:

USE CS_yx_DB GO SET NOCOUNT ON -- ********** Begin ********** -- -- ********** 此处写“2、查询没有选C06(课程号)课程的同学的学号,姓名,性别”的SQL语句 ********** -- select sno,sname,ssex from Student where Sno not in(select Sno from Sc where Cno='C06'); -- ********** End ********** -- GO

sql3:

USE CS_yx_DB GO SET NOCOUNT ON -- ********** Begin ********** -- -- ********** 此处写“3、查询成绩最高的选课信息,列出学号,课程号和成绩”的SQL语句 ********** -- select sno,cno,grade from SC where grade in( select max(Grade) from SC); -- ********** End ********** -- GO 第2关:子查询二

任务描述 本关任务:子查询练习

相关知识 使用SQL语言中的 Select 语句。 使用子查询完成查询练习 SQL语句中关键词大小写不区分。考虑到本系统的测评规则,在题目中要求对列名小写的,请务必按要求书写,否则会评判为错误! 性别用’m’表示男,’f’表示女

实验完成要求 根据代码区的提示,将查询数据的SQL语句书写在对应的代码区中。 注:请务必将select子句中出现的列名小写,顺序必须和题目要求一致 1、查询CS系没有选择’DB’课程学生的姓名,列出学生姓名。

2、查询‘DB’课程考最高分的选课信息。列出学号,课程号,成绩

测试说明 书写查询语句后,直接测试。

sql语句 sql1:

USE CS_yx_DB GO SET NOCOUNT ON -- ********** Begin ********** -- -- ********** 此处写“1、查询CS系没有选择'DB'课程学生的姓名,列出学生姓名”的SQL语句 ********** -- select sname from Student where sdept='CS' and Sno not in(select Sno from Sc where Cno in(select Cno from Course where Cname='DB')); -- ********** End ********** -- GO

sql2:

USE CS_yx_DB GO SET NOCOUNT ON -- ********** Begin ********** -- -- ********** 此处写“2、查询'DB'课程考最高分的选课信息。列出学号,课程号,成绩”的SQL语句 ********** -- select sno,cno,grade from SC where grade in (select max(grade) from SC where cno in(select cno from Course where Cname='DB'))and cno in (select cno from Course where Cname='DB'); -- ********** End ********** -- GO 第3关:子查询三

任务描述

本关任务:子查询练习

相关知识 使用SQL语言中的 Select 语句。 使用子查询完成查询练习 SQL语句中关键词大小写不区分。考虑到本系统的测评规则,在题目中要求对列名小写的,请务必按要求书写,否则会评判为错误! 性别用’m’表示男,’f’表示女

实验完成要求 根据代码区的提示,将查询数据的SQL语句书写在对应的代码区中。 注:请务必将select子句中出现的列名小写,顺序必须和题目要求一致 1、查询选修了先行课为’DB’的课程的学生,列出学生学号,姓名,性别,所在系。

测试说明 书写查询语句后,直接测试。

sql语句

USE CS_yx_DB GO SET NOCOUNT ON -- ********** Begin ********** -- -- ********** 此处写“1、查询选修了先行课为'DB'的课程的学生,列出学生学号,姓名,性别,所在系”的SQL语句 ********** -- select sno,sname,ssex,sdept from Student where Sno in (select Sno from SC where Cno in (select Cno from Course where Cpno in (select Cno from Course where Cname ='DB' ))); -- ********** End ********** -- GO 第4关:带子查询的增删改

任务描述 本关任务:带子查询的插入,修改和删除操作

相关知识 使用SQL语言中的 Insert,Update,Delete 语句。 使用子查询完成插入,修改,删除练习 SQL语句中关键字大小写不区分。 性别用’m’表示男,’f’表示女

实验完成要求 根据代码区的提示,将SQL语句书写在对应的代码区中。

1、将’DB’课程不及格的成绩加5分。 2、删除’English’(课程名)课程CS系学生的选课记录。 3、为CS系添加必修课’c02’。(即:为CS系没有选c02课程的学生选c02课程)

测试说明 书写查询语句后,直接测试。

sql语句 sql1:

USE CS_yx_DB GO SET NOCOUNT ON -- ********** Begin ********** -- -- ********** 此处写“1、将'DB'课程不及格的成绩加5分”的SQL语句 ********** -- update Sc set grade=grade+5 where grade


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3