Я хочу посчитать среднее из моих баз данных.
например, когда я запускаю 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
Что я могу изменить из запроса SQL сверху, если я хочу показать среднее значение Nilai_Pelajaran?
поэтому таблица должна быть такой
Nama_Siswa Average
=============== ===============
Teuku Zul Hidayat 67.5
Ferry Mulia Ramadhani 90
Apri Sara Diwa 75
Просто измените ваш запрос, чтобы использовать агрегатные функции (в этом случае 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
Других решений пока нет …