首页 > 解决方案 > 如何从表数据库中计算平均值

问题描述

我想从我的数据库中计算平均值。

例如,当我运行这样的 sql 查询时

SELECT user.nama_u AS Nama_Siswa,
       nilai.nilai_n AS Nilai_Pelajaran
       FROM nilai,
            user
       WHERE nilai.id_sw = user.id_u
             AND user.pangkat_u = 'Siswa'
             AND nilai.kelas_n = 'I'
       ORDER BY user.nama_u DESC

我有这样的桌子

Nama_Siswa               Nilai_Pelajaran
===============          ===============     
Teuku Zul Hidayat        75
Teuku Zul Hidayat        60 
Ferry Mulia Ramadhani    100
Ferry Mulia Ramadhani    80
Apri Sara Diwa           80
Apri Sara Diwa           70

如果我想显示 Nilai_Pelajaran 的平均值,我从上面的 sql 查询中修改了什么?

所以桌子一定是这样的

Nama_Siswa               Average
===============          ===============     
Teuku Zul Hidayat        67.5
Ferry Mulia Ramadhani    90
Apri Sara Diwa           75

标签: phpmysqlsqlaverage

解决方案


只需更改您的查询以使用聚合函数(在这种情况下AVG)和GROUP BY nama_u

SELECT user.nama_u AS Nama_Siswa, AVG(nilai.nilai_n) AS Nilai_Pelajaran 
FROM nilai
JOIN user 
WHERE nilai.id_sw = user.id_u AND user.pangkat_u = 'Siswa' AND nilai.kelas_n = 'I' 
GROUP BY user.nama_u
ORDER BY user.nama_u DESC

推荐阅读