-2

新建一张学员信息表(student),要求:

 1. 字段如下:学号(sid),姓名(name),性别(sex),年龄(age),地址(address).

 2. 分别为字段添加约束:学号为主键,姓名为非空,性别为检查约束,年龄为检查约束,地址为默认约束.

 3. 为表建立自增值(sid), 建议初始值从为 1001, 增量为 1.

 4. 插入记录.

新建一张课程表(course),要求:

 1. 字段如下:课程编号(cid),课程名称(subject).

 2. 分别为字段添加约束:课程编号为主键,课程名称为非空.

 3. 为表建立自增值(cid), 建议初始值从为 1, 增量为 1.

 4. 插入记录.


新建一张学员考试成绩表(grade),要求:

 1. 字段如下:成绩编号(gid),学号(sid),课程编号(cid),考试成绩(score).

 2. 分别为字段添加约束:成绩编号为主键,学号为外键,课程编号为外键,考试成绩为非空.

 3. 为表建立自增值(gid), 建议初始值从为 101, 增量为 1.

 4. 插入记录.


回顾分组查询:

 1. group by 

  用途:对结果集进行分组,常与汇总函数一起使用.
 2. having
 
  用途:指定群组或汇总的搜寻条件。

  注:having 通常与 group by 子句同时使用。不使用 group 时,having 则与 where 子句功能相似。

针对以上三张表,要求完成如下:

 1. 按照课程编号分组并求出每一组的平均分数(每门课程的平均分)

 2. 按照课程编号分组并求出每一组及格人数(grade >= 60)的平均分数(每门课程的及格人数的平均分)

 3. 求每个学员所有的课程的平均分

 4. 求每个学员所有的(考试成绩)及格课程的平均分

 5. 每次内部测试不同学员的平均成绩(每个学员的每门课程的平均分)

 6. 查询补考过的学员的平均成绩 (求出学员的课程编号(cid)在分组内出现过一次以上)(每个学员的每门课程的课程编号出现过一次以上)

 7. 使用多表内连接查询,求出学员的学号,姓名,考号,科目和成绩

 8. 建立一张视图,要求字段为中文,包含学员的学号,姓名,考号,科目,成绩这些字段

 9. 创建触发器,实现学生表与课程表更新时成绩表作同步更新。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值