按照学号分组,查询每个学生的学号和平均成绩,显示平均成绩大于70的记录。在mwsql中实现,并提供代码
时间: 2023-09-14 14:02:40 浏览: 621
假设有一个名为 `score` 的表,包含以下字段:`id`、`student_id`、`score`
可以使用以下 SQL 语句实现按学号分组查询学生平均成绩大于70的记录:
```
SELECT student_id, AVG(score) AS avg_score
FROM score
GROUP BY student_id
HAVING avg_score > 70;
```
其中,`AVG(score)` 表示计算每个学生的平均成绩,`GROUP BY student_id` 表示按学号分组,`HAVING avg_score > 70` 表示筛选出平均成绩大于70的记录。
在 mwsql 中,可以使用以下代码实现:
```python
from mwsql import MwSql
# 创建 MwSql 实例
mwsql = MwSql()
# 查询学生平均成绩大于70的记录
query = """
SELECT student_id, AVG(score) AS avg_score
FROM score
GROUP BY student_id
HAVING avg_score > 70;
"""
result = mwsql.query(query)
# 输出结果
for row in result:
print(row["student_id"], row["avg_score"])
```
阅读全文