1、设计一个触发器,每当系统中删除一门课程,就需要自动修改相应成绩表的数据,以便保持系统中课程与成绩数据的完整性与一致性
2.
统计并显示总评成绩(usually成绩占40%,final成绩占60%)的平均分,如果平均分在60分以上,显示“成绩优秀”,并显示前三名学员的考试信息;如果在60分以下,则显示“本班成绩较差”,并显示后三名学员的考试信息。
sql正在努力学习,求答疑
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
|__WhoAmI__| 2022-12-17 16:28关注获得0.75元问题酬金 1、
CREATE TRIGGER update_grades AFTER DELETE ON courses FOR EACH ROW BEGIN DELETE FROM grades WHERE course_id = OLD.id; END;2、
使用 SELECT 语句来统计平均分:SELECT AVG((usual + final) / 2) as avg_score FROM grades;使用 IF 语句来根据平均分的值输出不同的消息:
SELECT IF(AVG((usual + final) / 2) >= 60, '成绩优秀', '本班成绩较差') as result FROM grades;使用 ORDER BY 和 LIMIT 语句来选择并输出前三名或后三名的学员考试信息:
SELECT * FROM grades WHERE (usual + final) / 2 >= 60 ORDER BY (usual + final) / 2 DESC LIMIT 3;输出成绩小于 60 分的学员考试信息:
SELECT * FROM grades WHERE (usual + final) / 2 < 60 ORDER BY (usual + final) / 2 ASC LIMIT 3;解决 无用评论 打赏 举报