【发布时间】:2011-11-04 23:11:47
【问题描述】:
我有以下从 PHP 调用的简单 MySQL 查询:
SELECT foo_id, SUM(number_of_guests)
FROM guests
WHERE foo_id = $foo_id
GROUP BY foo_id
这很好用,除了一个 $foo_id,它返回的值大约是 number_of_guests 字段总和的 2.5 倍。
仅对于 $foo_id 的某个值,什么可能导致此行为?
有没有更好的方法来做到这一点?
【问题讨论】:
-
你能举一些例子数据来说明这个问题吗?
-
您的查询中是否存在您在示例中省略的连接?
-
不,这是实际的查询。
-
@B 七:如果是在实际查询中,我看不出它会出现任何错误。您很可能是手动错误计算了 number_of_guests (一些 gui 工具会自动限制行数,因此您可能没有看到所有
SELECT * FROM guests WHERE foo_id = $foo_id -
正如@MarkByers 所说;数据或 G.O. 通常我不愿意相信服务器的行为很糟糕,尽管知道
$foo_id是什么数据类型会有所帮助。