MySql avg()函数没有返回正确的值

时间:2017-05-16 00:03:29

标签: mysql sql

我正在学习平均功能并尝试如下:

使用open_emp_id字段的帐户表:

+-------------+
| 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 |
+-------------+

我的SQL查询:

SELECT avg(open_emp_id)
FROM account;

我的结果:

+------------------+
| avg(open_emp_id) |
+------------------+
|           8.8750 |
+------------------+

结果如何不是10?

(1 + 10 + 13 + 16)/ 4 = 10

1 个答案:

答案 0 :(得分:1)

lsof函数返回所有输入值的平均值。

您有8 avg(expression)' s = 8

你有7 1 s = 70

您有3 10' s = 39

您有6 13' s = 96

以上所有加在一起的是16

您总共有24个输入元素,因此,213/24 = 8.875