ich über die durchschnittliche Funktion lerne und versucht, es wie folgt:MySql avg() Funktion nicht korrekten Wert zurückkehr
Konto Tabelle mit open_emp_id Feld:
+-------------+
| open_emp_id |
+-------------+
| 1 |
| 1 |
| 1 |
| 1 |
| 1 |
| 1 |
| 1 |
| 1 |
| 10 |
| 10 |
| 10 |
| 10 |
| 10 |
| 10 |
| 10 |
| 13 |
| 13 |
| 13 |
| 16 |
| 16 |
| 16 |
| 16 |
| 16 |
| 16 |
+-------------+
My SQL-Abfrage:
SELECT avg(open_emp_id)
FROM account;
Mein Ergebnis:
+------------------+
| avg(open_emp_id) |
+------------------+
| 8.8750 |
+------------------+
Wie ist das Ergebnis nicht 10?
(1+ 10 + 13 + 16)/4 = 10
Weil Sie nicht 4 Reihen haben, haben Sie viel mehr. Ihre Berechnung ist 'AVG (DISTINCT open_emp_id)' - aber ich rate Ihnen, 'AVG (DISTINCT)' niemals zu verwenden. –
@GordonLinoff warum sollte ich nicht 'avg (distinct)'? – user3809875