这两道题..谁能帮我解答下??谢谢

来源:百度知道 编辑:UC知道 时间:2024/05/05 20:17:34
四、操作(20分)

学生:学号(文本类型),姓名(文本类型),性别(逻辑型),
出生日期(日期时间型),院系(文本类型)
学生成绩:学号(文本类型),课程编号(文本类型),成绩(数值型)
(1)在学生表中查询所有学生的信息
(2)在学生成绩表中查询成绩不及格的学生学号,姓名和成绩
(3)在学生表中查询计算机系的男学生信息
(4)在学生成绩表中添加字段“考试科目”,类型为“text”,字段宽度为8个字符

五、操作(20分)

学生ID 学生姓名 课程ID 课程名称 成绩 教师ID 教师姓名
S3 王五 K4 政治 53 T4 赵老师
S1 张三 K1 数学 61 T1 张老师
S2 李四 K3 英语 88 T3 李老师
S1 张三 K4 政治 77 T4 赵老师
S2 李四 K4 政治 67 T5 周老师
S3 王五 K2 语文 90 T2 王老师
S3 王五 K1 数学 55 T1 张老师
S1 张三 K2 语文 81 T2 王老师
S4 赵六 K2 语文 59 T1 张老师
S1 张三 K3 英语 37 T3 李老师
按照四门课程累加的成绩由高到低,列出所有学生的四门成绩

(1)在学生表中查询所有学生的信息
select * from [学生]
(2)在学生成绩表中查询成绩不及格的学生学号,姓名和成绩
select A.学号,A.姓名,B.成绩 ,B.课程编号from [学生] A,[学生成绩] B where A.学号=B.学号 and 成绩<60
group by A.学号,A.姓名,B.成绩 ,B.课程编号
(3)在学生表中查询计算机系的男学生信息
select * from 学生 where 性别=1 and 院系 like '%计算机%'
(4)在学生成绩表中添加字段“考试科目”,类型为“text”,字段宽度为8个字符
alter table 学生成绩 add 考试科目 text(8) null

按照四门课程累加的成绩由高到低,列出所有学生的四门成绩
select 学生ID, 学生姓名,sum(成绩) from 学生成绩

四、
1、SELECT * FROM 学生表
2、SELECT A.学号,A.姓名,B.成绩 FROM 学生表 A LEFT JOIN 学生成绩表 B ON A.学号=B.学号 WHERE B.成绩<60
3、SELECT * FROM 学生表 WHERE 院系='计算机系' AND 性别='男'
4、ALTER TABLE 学生成绩表
ADD 考试科目 varchar(8) --TEXT是不能指定列宽的 所以不能用TEXT

五、
这个题题意有点不清,如果是要按照每个人的总分从高到低再把每科的成绩列出,那么就这样:
SELECT A.* FROM
学生成绩表 A JOIN (SELECT 学生ID,SUM(成绩) AS 成绩 FROM 学生成绩表 GROUP BY 学生ID) B ON A.学生ID=B.学生ID
ORDER BY B.成绩 DESC

如果只是把总分按照从高到低列出那么:
select 学生ID,学生姓名,sum(成绩) fro