请老师帮忙查看作业
来源:1-15 自由编程
诡辩君
2019-11-18 11:23:16
-- 查询每个班级中每一科的平均成绩,显示数据包括班级名称,课程以及平均分数,并按照班ID升序排序。 SELECT c.name AS '班级名称', sc.course AS '课程', AVG(sc.mark) AS '平均成绩' FROM class AS c JOIN student AS s ON c.c_id=s.class JOIN score AS sc ON s.s_id=sc.s_id GROUP BY c.name,sc.course ORDER BY c.name; -- 查询所有同学的学生ID,姓名,性别以及总分,并安装成绩从高到低排序。 SELECT s.s_id AS '学生ID',s.name AS '姓名',s.gender AS '性别',SUM(sc.mark) AS '总分' FROM student AS s INNER JOIN score AS sc ON s.s_id=sc.s_id GROUP BY s.name ORDER BY SUM(sc.mark) DESC; -- 查询课程成绩小于75的学生ID,姓名,班级,课程以及分数。 SELECT s.s_id AS '学生ID', s.name AS '姓名', c.name AS '班级',sc.course AS '课程', sc.mark AS '分数' FROM student AS s INNER JOIN class AS c ON c.c_id=s.class INNER JOIN score AS sc ON sc.s_id=s.s_id WHERE sc.mark<75; -- 将李米米的数学成绩该为88分。 SELECT s.name, sc.course,sc.mark FROM student AS s INNER JOIN score AS sc ON sc.s_id=s.s_id WHERE sc.course='数学' AND s.name='李米米'; UPDATE score SET mark=88 WHERE s_id=(SELECT s_id FROM student WHERE name='李米米'); -- 计算重点班中每一科的平均成绩,显示数据包括:重点班ID,班级名称,课程,平均分数,按照降序排序。 SELECT c.c_id AS '重点班ID', c.name AS '班级名称',sc.course AS '课程', AVG(sc.mark) AS '平均分数' FROM class AS c INNER JOIN student AS s ON s.class=c.c_id INNER JOIN score AS sc ON sc.s_id=s.s_id WHERE c.descrip='重点班' GROUP BY c.name,sc.course ORDER BY c.c_id ASC;
1回答
同学你好,复制运行贴出代码,在修改李米米的数学成绩中,根据题目要求,只修改李米米的数学成绩,而不是修改李米米的所有成绩为88,所以在修改语句的条件中需要再加上course='数学'的条件,例如:
UPDATE score SET mark=88 WHERE s_id=( SELECT s_id FROM student WHERE name='李米米' ) AND course='数学';
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
相似问题