mysql多表联查 题目

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

mysql多表联查题目
好的,以下是一个关于MySQL多表联查的题目:
假设有一个学生信息表(student)和一个成绩表(score),学生信息表中包含学生的姓名(name)、学号(student_id)和班级(class)等信息,成绩表中包含学生的学号(student_id)、课程(course)和分数(score)等信息。

现在要求查询每个学生所在班级和他们的平均分数,并按班级和平均分数降序排列。

可以使用以下SQL语句实现:
sql复制代码:
SELECT , s.class, AVG(sc.score) AS avg_score
FROM student s
JOIN score sc ON s.student_id = sc.student_id
GROUP BY s.class,
ORDER BY s.class DESC, avg_score DESC;
解释:
SELECT 语句用于选择要查询的列,这里选择了学生的姓名、班级和平均分数。

FROM student s 指定了要查询的表,这里使用了别名 s 来表示学生信息表。

JOIN score sc ON s.student_id = sc.student_id 将学生信
息表和成绩表进行连接,连接条件是学生的学号相等。

GROUP BY s.class, 将结果按照班级和姓名进行分组,以便计算每个班级中学生的平均分数。

AVG(sc.score) AS avg_score 计算每个班级中学生的平均分数,并将结果命名为 avg_score。

ORDER BY s.class DESC, avg_score DESC 将结果按照班级和平均分数降序排列。

相关文档
最新文档