Mam tabele z ocenami pracowników
id_prac (id pracownika)
id_dz (id dziedziny z jakiej został oceniony)
ocena
Problem polega z wyciągnięciem prawdziwej średniej ocen
Zapytanie:
SELECT id_prac,avg(ocena) FROM oceny GROUP BY id_prac
nie da mi prawdziwej średniej bo z jednej dziedziny pracownik może mieć
pięć ocen 2,5 a z drugiej jedna 5,0. Zapytanie najpierw powinno wyciągnąć średnią z danej dziedziny a dopiero później całość zgrupować po id pracownika
Czyli do sedna: jak z tego zapytania wyciągnąć średnią ocenę
SELECT id_prac,id_dz,avg(ocena) AS srednia FROM ocena GROUP BY id_prac,id_dz
Pozdrawiam.
EDIT----------
Problem rozwiazany. Z pomoca przychodza pod zapytania dolaczone do mysql 4.x
Moze komus sie przyda:
SELECT a.id_ucz,avg(a.ocena) AS srednia FROM(SELECT id_ucz,id_prz,avg(ocena) AS ocena FROM ocena GROUP BY id_ucz,id_prz ORDER BY id_ucz) AS a GROUP BY a.id_ucz;