求数据库题目解答3

来源:百度知道 编辑:UC知道 时间:2024/05/03 19:51:55
用SQL语句完成以下操作

对图教学数据库的三个基本表:
学生(学号,姓名,性别,系别)
选修(学号,课程号,学分)

1.检索年龄大于23岁的男生的学号和姓名
2.检索学习课程号为C2的学生号和成绩
3.检索选修课程号为C2或C4的学生的学号
4。求男生的总人数和平均年龄
5.检索学号为S12同学所有课程的平均分
6.往学生表中插入一条记录,学号为S9,姓名为王小文,年龄21,性别为男,计算机科学系
7.删除选修表中成绩为空的记录
8。把C2课程不及格同学的成绩置为空值

1. select 学号,姓名 from 学生 where ???>23 --之所以用问号是因为你提供的两个表没有年龄字段
2. select 学号,成绩 from 选修 where 课程号 ='C2'
3. select 姓名,学号 from 学生 where 学号 in(select 学号 from 选修 where 课程号='C2' OR 课程号='C4')
4. select count(性别),Avg(年龄) from 学生 where 性别='男'
5. select avg(a.学分) from 选修 a,学生 b
where a.学号=b.学号 and b.学号='S12'
6.insert into 学生
select 'S9','王小文',21,'男','计算机科学'
7.delete from 选修 where 学分 is null or 学分=0
8 update 选修 set 学分=0 where 课程号='C2' and 学分<60