【发布时间】:2012-08-01 13:04:02
【问题描述】:
我有三个从数据库中获取统计信息的查询,但我的结果总计不正确。如果我自己算算的话,我会得到:// 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)
【问题讨论】:
-
你能发布数据类型的表结构吗?
-
你有
SELECT * FROM facebook_accts。我确定你的意思是SELECT COUNT(friend_count) FROM facebook_accts -
您有 4 条记录,根本没有好友数(甚至为零)。所以平均值计算为
440728/(1128-4)。 -
friend_count 可以为空,@Smandoli 我计算返回的行数..