2

我有三个从数据库中获取统计信息的查询,但我的结果的总数并没有正确加起来。如果我自己做数学,这就是我得到的: // 440728 / 1128 = 390.72

但是,以下是我的查询返回的内容:

SELECT * FROM facebook_accts
         WHERE user_id IN (SELECT id FROM  `user_accts` WHERE owner_id = '121') 
// returns 1128

SELECT sum(friend_count) FROM facebook_accts
                         WHERE user_id IN
                            (SELECT id FROM  `user_accts` WHERE owner_id = '121') 
// returns 440728

SELECT avg(friend_count) FROM facebook_accts
                         WHERE user_id IN
                            (SELECT id FROM  `user_accts` WHERE owner_id = '121') 
// returns 392.11 (number formatted to two decimal places by php)
4

2 回答 2

1

这可能是因为列friend_count有一些NULL值,因为SUMAVG功能忽略NULL值。看这里

于 2012-08-03T13:22:55.500 回答
0

我猜这 1128 行包含 NULL 值(AVG 和 SUM 忽略)。

于 2012-08-03T13:20:41.047 回答