我有以下简单的 MySQL 查询,从 PHP 调用:
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 的特定值出现此行为?
有更好的方法吗?
最佳答案
您的查询应该有效。该错误很可能出现在您用来验证结果的其他方法中。
Is there a better way to do this?
是的。由于您只获取一组,因此不需要 GROUP BY 子句:
SELECT SUM(number_of_guests)
FROM guests
WHERE foo_id = $foo_id
关于mysql - MySQL 中的 SUM(column) 怎么会给出错误的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8016781/