求平均成绩大于 60 分的学生名字和他们个人的平均分

129 阅读1分钟

如果你的学生信息存储在 MySQL 数据库中,可以使用 SQL 查询来获取平均成绩大于60分的学生名字和他们的平均分。以下是一个示例 SQL 查询:

假设你有两张表,一张是学生信息表 students,包含学生的姓名和学号,另一张是学生成绩表 scores,包含学生的分数和学号。表结构可能如下:

CREATE TABLE students (
    student_id INT PRIMARY KEY,
    student_name VARCHAR(50)
);

CREATE TABLE scores (
    score_id INT PRIMARY KEY,
    student_id INT,
    score INT,
    FOREIGN KEY (student_id) REFERENCES students(student_id)
);

现在,你可以使用如下 SQL 查询来获取平均成绩大于60分的学生名字和他们的平均分:

SELECT
    s.student_name,
    AVG(sc.score) AS average_score
FROM
    students s
JOIN
    scores sc ON s.student_id = sc.student_id
GROUP BY
    s.student_name
HAVING
    AVG(sc.score) > 60;

这个查询使用了 JOIN 连接两张表,计算每个学生的平均分,并使用 HAVING 子句筛选出平均分大于60分的学生。最后,结果包括学生名字和对应的平均分。