📜  mysql 来自两个表的平均值 - SQL (1)

📅  最后修改于: 2023-12-03 15:03:06.875000             🧑  作者: Mango

MySQL:从两个表中获取平均值

在MySQL中,我们可以使用JOIN语句从两个表中获取数据。JOIN语句允许我们将两个表中的数据组合在一起,以便可以使用它们来做一些有意义的事情。

在底下的例子中,我们将从两个表中获取平均值。

示例

假设我们有两个表:students和grades。students表包含有关每个学生的一些基本信息,而grades表包含每个学生的成绩。我们将使用JOIN语句从两个表中获取平均值。

数据表:students

| id | name | age | gender | | --- | --------- | ----- | ------ | | 1 | Alice | 20 | female | | 2 | Bob | 22 | male | | 3 | Charlie | 21 | male | | 4 | David | 19 | male | | 5 | Elizabeth | 20 | female |

数据表:grades

| id | student_id | course | grade | | --- | --------- | ------ | ----- | | 1 | 1 | math | 80 | | 2 | 1 | art | 90 | | 3 | 2 | math | 85 | | 4 | 2 | art | 95 | | 5 | 3 | math | 90 | | 6 | 3 | art | 80 | | 7 | 4 | math | 70 | | 8 | 4 | art | 75 | | 9 | 5 | math | 80 | | 10 | 5 | art | 85 |

查询语句
SELECT AVG(grades.grade) AS average_grade
FROM students
JOIN grades ON students.id = grades.student_id
结果

| average_grade | | ------------- | | 83.5 |

在这个例子中,我们使用JOIN将students表和grades表组合在一起。我们使用students.id和grades.student_id相等的条件来匹配学生成绩。我们使用AVG函数获取平均成绩,并将其分配给名为average_grade的别名。最后,我们使用SELECT语句获取结果。