第1个回答 2013-05-14
查看你的相同提问
--1、从成绩表和课程信息表中查看所有学生学号、课程编号、SQL Server 2000数据库应用课程的成绩。
select 学生学号, 课程编号, 成绩 from 成绩表
where 课程编号 =
(
select 课程编号 from 课程表
where 课程名 = 'SQL Server 2000数据库应用课程'
)
--2、从成绩表和课程信息表中查看SQL Server 2000数据库应用课程的最高分、最低分、平均成绩
select max(成绩) as "最高分", min(成绩) as "最低分", avg(成绩) as "平均分" from 成绩表
where 课程编号 =
(
select 课程编号 from 课程表
where 课程名 = 'SQL Server 2000数据库应用课程'
)
--3、将成绩表中某一课程的成绩按降序排列
select * from 成绩表
where 课程编号 =
(
select 课程编号 from 课程表
where 课程名 = 某门课程名
)
order by 成绩 desc
--4、查看90分以上学生的成绩、课程名称、学生姓名
select 成绩, 课程名称, 学生姓名 from 成绩表
join 课程表
on 成绩表.课程编号 = 课程表.课程编号
join 学生表
on 成绩表.学生编号 = 学生表.学生编号
where 成绩 > 90
--5.对所有学生按学号分组并计算每人本学期平均成绩。--这里需要了解学期是怎么体现的
select 学生表.学生学号, avg(成绩) as "平均成绩" from 成绩表
join 学生表
on 学生表.学生学号 = 成绩表.学生学号
where ···
group by 学生表.学生学号
--6.显示所有学生的学号、姓名、名称、成绩。--名称是什么东东?
select 学生表.学生学号, 学生姓名, ··· 成绩 from 成绩表
join 课程表
on 成绩表.课程编号 = 课程表.课程编号
join 学生表
on 成绩表.学生编号 = 学生表.学生编号
第2个回答 2013-05-14
成绩表结构
学号 课程号 分数
课程表结构
课程号 课程名
学生表
学号 姓名
1.select a.学号,a.课程号,a.分数 from 成绩表 a left join 课程信息表 b on a.课程ID=b.课程ID where
b.课程名='SQL Server 2000数据库应用'
2.
select a.学号,a.课程号,max(a.分数) 最高分,min(a.分数) 最低分,avg(a.分数) 平均分 from 成绩表 a left join 课程信息表 b on a.课程ID=b.课程ID where
b.课程名='SQL Server 2000数据库应用'
3.
select a.学号,a.课程号,a.分数 from 成绩表 a left join 课程信息表 b on a.课程ID=b.课程ID where
b.课程名='SQL Server 2000数据库应用' order by desc
4.
select a.分数,b.课程名,c.姓名 from 成绩表 a left join 课程信息表 b on a.课程ID=b.课程ID
left join 学生表 c on a.学号=c.学号 where a.分数>90
5
select a.学号 ,c.姓名,avg(a.成绩)
from 成绩表 a
left join 课程信息表 b on a.课程ID=b.课程ID
left join 学生表 c on a.学号=c.学号
group by a.学号 ,c.姓名
6
select a.学号 ,b.姓名,a.课程号,a.成绩
from 成绩表 a left join 学生信息表 b on a.学号=b.学号