J'ai une tablecalcul de la moyenne en moyenne dans mySQL
voiture
id | person_id | mpg
------------------------
4 | 1 | 50
5 | 1 | 15
6 | 2 | 10
7 | 2 | 28
8 | 3 | 33
je dois obtenir une moyenne de mpg de chaque personne, puis en moyenne pour le groupe.
person 1 avg = (50 + 15)/2 = 32.5
person 2 avg = (10 + 28)/2 = 19
person 3 avg = 33
group average = 32.5 + 19 + 33/3 = 28.1
Y at-il une requête qui fera ce dont j'ai besoin?
Don Ne faites pas la moyenne des moyennes, car vous perdrez le poids des moyennes. i.e: 10 voitures à 50 mpg en moyenne et une voiture à 10 mpg "moyenne" vous donnera 30mpg comme la moyenne totale, ce qui est très faux :) –
Je ne suis pas d'accord. 2 voitures vertes à 50 mpg, 2 voitures rouges à 20 mpg et 1 voiture noire à 10 mpg ont deux résultats différents: - en moyenne tout: 150/5 = 30 mpg - en faisant la moyenne des moyennes pour chaque voiture: (50 + 20 + 10)/3 = 26.667 La première option est celle que vous avez indiquée, mais pas nécessairement ce qui est recherché! –
Je compare le mpg moyen d'une personne au mpg moyen d'autres personnes avec une moyenne de groupe de mpg par personne. Je ne veux pas que le gars avec les voitures de 10 - 50 mpg pour fausser les résultats. Je veux faire la moyenne de sa moyenne de 50 avec le gars qui a 1 voiture à 10mpg. – Emily