mysql查询平均成绩大于等于80分以上的学生情况。
时间: 2024-03-25 16:41:28 浏览: 846
您可以使用以下 SQL 命令查询平均成绩大于等于80分以上的学生情况:
```sql
SELECT 学生表.学号, 学生表.姓名, AVG(成绩表.成绩) AS 平均成绩
FROM 学生表, 成绩表
WHERE 学生表.学号 = 成绩表.学号
GROUP BY 学生表.学号, 学生表.姓名
HAVING AVG(成绩表.成绩) >= 80;
```
这将返回平均成绩大于等于80分的学生的学号、姓名和平均成绩信息。使用 `AVG(成绩表.成绩)` 函数计算每个学生的平均成绩,然后使用 `HAVING` 子句对平均成绩进行筛选,只返回平均成绩大于等于80分的学生信息。最后,使用 `GROUP BY` 子句按照学号和姓名进行分组,以方便查看每个学生的信息。
相关问题
MySQL代码 查询平均成绩大于等于 60 分的同学的学生编号和学生姓名和平均成绩
可以使用以下MySQL代码查询平均成绩大于等于60分的同学的学生编号、学生姓名和平均成绩:
```
SELECT student.id, student.name, AVG(score.score) AS avg_score
FROM student
INNER JOIN score
ON student.id = score.student_id
GROUP BY student.id, student.name
HAVING AVG(score.score) >= 60;
```
注意,在查询中使用了INNER JOIN将学生表和成绩表连接起来,然后使用GROUP BY分组并计算每个学生的平均成绩,最后使用HAVING筛选出平均成绩大于等于60分的学生。
mysql查询平均成绩大于85的学生姓名和平均成绩
假设学生成绩信息存储在名为`scores`的表中,该表包含学生姓名`name`、学号`student_id`、课程名称`course`和分数`score`四个字段,可以使用以下SQL查询语句来查询平均成绩大于85的学生姓名和平均成绩:
```
SELECT name, AVG(score) AS avg_score
FROM scores
GROUP BY student_id
HAVING AVG(score) > 85;
```
该查询语句中,首先使用`GROUP BY`子句将成绩表按照学生进行分组,以便计算每个学生的平均成绩。然后使用`HAVING`子句过滤出平均成绩大于85分的学生记录,并使用`SELECT`子句选择对应的姓名和平均成绩列进行显示。
需要注意的是,由于需要计算平均成绩,查询中使用`AVG()`聚合函数来求每个学生的平均成绩。同时,在`SELECT`子句中使用`AS`关键字来给计算结果起一个别名,以便更好地显示结果。
阅读全文