使用 GROUP BY 时 MySQL SUM 不起作用

标签 mysql select group-by sum

假设我们有这张表:

Symbol | Size
A      | 12
B      | 5
A      | 3
A      | 6
B      | 8

我们想要这样的 View :

Symbol | Size
A      | 21
B      | 13

所以我们使用这个:

Select Symbol, sum(Size) from table group by Symbol order by Symbol ASC

但是我们得到的是:

Symbol | Size
A      | 12
B      | 5

我做错了什么?!

最佳答案

你做得对,你应该期待正确的结果。您能否提供有关您正在使用的数据库、其他模式等的更多信息?

也许您在 Symbol 上有一些独特的索引?

尝试执行以下命令来“健全测试”您的系统:

SELECT SUM(Size) FROM table

应该是 34

SELECT Symbol, Count(*) FROM table GROUP BY Symbol

结果应该是 3 和 2

如果上述两种方法都如您所说的那样完美,请尝试:

SELECT Symbol, Count(*), Sum(Size) FROM table GROUP BY Symbol

这是您的代码,添加了 Count(*) 但没有 ORDER BY 子句。如果上面两个都不行的话,我真的很纳闷...

关于使用 GROUP BY 时 MySQL SUM 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1274482/

相关文章:

MySQL 表没有正确对齐

php - 如何在cakephp中加入

mysql - 使用列中的值作为 LIKE 语句中表达式的值

mysql - 如何在同一个查询中返回不同的结果?

group-by - APEX - 具有 MRU 功能的表格表格是否可以像交互式报表一样具有过滤功能?

sql - 如何在firebird中使用GROUP BY

mysql - 合并 2 个表和 GROUP BY 日期

php - foreach 循环跳过 3 个项目中的前 2 个

sql - 比较两列的组合与 SQL 中其他两列的组合

mysql - 如何在mysql过程中使用SUBSTRING_INDEX函数