sql server 程序题

来源:百度知道 编辑:UC知道 时间:2024/05/29 10:44:03
编写程序计算出专业为1090,课程代码为1304 年级为2008的平均总评成绩,若在80分以上,显示成绩优良,并查出对应的班全名,否则,60分以上,显示成绩一般,60分以下 显示成绩不合格
该怎么写程序,急!!!! 如果你们的答案告知我以后我能运行上就给分,这个题关键是我不知道怎么查出对应的班全名
由于无法上传BAK文件,所以大概把各表的内容讲述如下:
学生表:学号,姓名,性别,专业,年级,班序号
成绩表:学号,课程代码,专业,年级,班序号,总评成绩
班表:年级。所属专业,班序号,班全名
课程表:课程代码,课程名称

你的描述有点问题,大概给你写了下,估计连表之间的连接有点问题,你参照改一下
select C.班全名,case when A.总评成绩>=100 then '优良'
when A.总评成绩>=60 then '一般'
else '不合格' end F_CJ

from 成绩表 A join 学生表 B on A.学号=B.学号
join 班表 C on B.班序号=C.班序号

where B.专业='1090' and A.课程代码='1304' and B.年级='2008'

这个题目,这里主要是case 的运用已经表之间的连接方式

祝你好运。

select 学号,课程代码,专业,班表.班全名,班序号,总评成绩=case
when 总评成绩>80 then '优良'
when 总评成绩>60 then '一般'
when 总评成绩<60 then '不合格'
from 成绩表
inner join 班表 on 成绩表.年级=班表.年级