mysql多表联查简单题目中级成绩查询入口
好的,以下是一个简单的 MySQL 多表联查的题目:
假设有两个表,一个是学生表(students),包含学生信息,另一个是成绩表(scores),包含学生的成绩信息。
学生表(students)包含以下字段:
student_id:学生 ID
student_name:学生姓名
age:学生年龄
成绩表(scores)包含以下字段:
score_id:成绩 ID
student_id:学生 ID
subject:科目名称
score:分数
请编写一个查询语句,出所有学生姓名和对应科目的最高分和最低分。要求结果按科目分组,并且每组显示最高分和最低分。
示例查询语句:
```sql
SELECT _name, , MAX(score) AS max_score, MIN(score) AS min_score
FROM students s
JOIN scores sc ON _id = _id
GROUP BY , _name, ;
```
这个查询语句使用了 JOIN 操作将学生表和成绩表连接起来,通过 student_id 字段进行匹配。然后使用 GROUP BY 子句按科目名称和学生的姓名、年龄进行分组,并使用 MAX 和 MIN 函数分别计算每组的最高分和最低分。最后,查询结果返回了学生姓名、年龄、对应科目的最高分和最低分。