现有三张表
学生表,有字段:姓名,学号,专业
选课表,有字段:学号,课号,成绩
课程表,有字段:课号,课名
连接查询
(一)简单连接
1、列出选修1号课的学生姓名及成绩。
2、列出选修1号课的学生的学号、姓名及成绩。
3、求出总分大于150的学生的学号、姓名及总成绩。
4、建立视图:语文课,包括字段:课号,课名,姓名,学号,专业,成绩
(二)自连接查询
1、列出那些专业相同的学生相应的姓名及专业信息。
2、求至少选修1号课和2号课的学生的学号。
(三)连接汇编语言
1、列出选修1号课的学生姓名及成绩。
2、查询没有选修任何课程的学生姓名。
三、嵌套查询
(一)普通嵌套与谓词EXISTS
1、列出选修汇编语言课的学生的学号。
(二)量词ANY、SOME、ALL
1、求选修2号课的学生中,成绩比选修1号课的最低成绩要高的学生的学号和成绩。
2、求选修2号课的学生中,成绩比选修1号课的任何学生的成绩都要高的那些学生的学号和成绩。
(三)内外层互相关嵌套(外层依赖于内层的查询结果,内层依赖于外层来进一步查询)
1、列出每门课程中成绩最高的选课信息。
2、列出每个学生中成绩低于本人平均成绩的选课信息。
四、操作功能
1、在课程表中插入新的元组(5,大学英语)。
2、给学生表中男生的记录加上删除标记。
3、将选课表中所有课程的成绩分别提高5分。将课号为“4”的课程的成绩置为空值。
五、定义表结构
1、建立研究生表,其结构如表所示:
字段名
| 字段类型
| 字段长度
| 小数位数
| 特殊要求
|
学号
| C
| 6
|
|
|
姓名
| C
| 8
|
|
|
性别
| C
| 2
|
|
|
年龄
| N
| 3
| 0
|
|
入学年月
| D
|
|
| 允许空值
|
2、假设已经建立了XSK数据库,在XSK中建立“学生1”表,其结构如表所示
字段名
| 字段类型
| 字段长度
| 小数位数
| 特殊要求
|
学号
| C
| 6
|
| 主索引
|
姓名
| C
| 8
|
| 不能为空
|
性别
| C
| 2
|
|
|
年龄
| N
| 3
| 0
| 年龄大于10小于45
|
是否党员
| L
|
|
|
|
入学年月
| D
|
|
| 默认值为1999年9月1日
|
3、在XSK数据库建立“课程1”表,其结构如表所示:
字段名
| 字段类型
| 字段长度
| 小数位数
| 特殊要求
|
课号
| C
| 4
|
| 主索引
|
课程名
| C
| 10
|
| 不能为空
|
学分
| N
| 2
|
|
|
4、在XSK数据库建立“选课1”表,其结构如表所示:
字段名
| 字段类型
| 字段长度
| 小数位数
| 特殊要求
|
学号
| C
| 6
|
| 外索引与学生表建立关系
|
课号
| C
| 4
|
| 外索引与课程表建立关系
|
成绩
| N
| 5
| 2
|
|
六、修改表结构
1、为“课程1”表添加一个开课学期字段,字段类型为数值型,长度为1。
2、修改开课学期字段为字符型,合法值为1或2。
3、删除“课程1”表中对开课学期字段的合法值约束,设置默认值为1。
4、删除“课程1”表中的开课学期字段。修改课程名字段为“课名”字段。
5、在“学生1”表的“年龄”字段上建立候选索引。
6、在“学生1”表中添加一个出生日期字段,删除年龄字段。
七、高级应用
1、查询表学生,要求每页显示10条数据,查询第5页数据
2、建立分页存储过程,输入参数包括,表名、主键名、每页显示数据量、页码
八、检索
1、创建一个日常消费的表,字段包括(姓名, 日期, 收支,类别, 项目, 费用,地点)
2、向表中添加最近自己三个月的收支记录(注:再添加至少四位同学的记录)
3、检索要求
(1)平均每天支出,最低支出,最高支出
(2)支出最高的类别和收入最高的类别
(3)最低支出的日期,最高支出的日期,最低收入的日期,最高收入的日期
(4)不同类别最低支出的日期,最高支出的日期
(5)支出和收入走势表
(6)建立新表,数据来源此表,字段为:姓名,日期,餐饮支出,娱乐支出,学习支出,电子产品支出,服饰支出,其它支出