sql - 返回 SQL 中列的平均值

标签 sql select average

我对这一切都很陌生,所以请原谅我说了什么愚蠢的话。 假设我有下表:

Subject | Test | Mark
His     | E1   | 30
His     | E1   | 36
His     | E2   | 22
His     | E2   | 51
Sci     | E1   | 35
Sci     | E1   | 33
Math    | E1   | 29
Math    | E1   | 52

我想知道如何让 SQL 找到每次考试的平均值,然后像这样显示它:

Subject | Test | Mark
His     | E1   | 33
His     | E2   | 36.5
Sci     | E1   | 34
Math    | E1   | 40.5

最佳答案

Turophile 是正确的。如果您需要将其写出来:

SELECT Subject, Test, AVERAGE(Mark) as Mark FROM tablename GROUP BY Subject, Test

关于sql - 返回 SQL 中列的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60628031/

相关文章:

php - MySQL 多表关系

javascript - 如何检查用户是否在 <select> 中选择了某个属性并将其添加到搜索查询中?

php - 在 mysql 中使用 SELECT INTO OUTFILE 命令保存 XLS 文件

mysql - 选择查询显示第一次和最后一次

java - 在 Java 中排除一个值

python - 如何修复ZeroDivisionError : Division by zero?

SQL Server : return column names based on a record's value

mysql - @UniqueConstraint 可空字段

mysql - 在 mysql 中使用 avg 进行慢速查询

mysql - 如何在 MYSQL 中通过另一列选择具有 MAX(列值)、PARTITION 的行?