【发布时间】:2010-11-19 10:57:46
【问题描述】:
假设我们有这张桌子:
Symbol | Size
A | 12
B | 5
A | 3
A | 6
B | 8
我们想要这样的视图:
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
我做错了什么?!
【问题讨论】:
-
这些是您在测试中使用的真实列吗?如果有,它们的数据类型是什么?
-
这是正确的做法。
-
这是完整的表吗?组函数中唯一重要的问题与列中的空值有关,在这里看不到,但我认为需要完整转储数据才能获得正确答案
-
不,这还不是全部,它们在表中大约有 45 列和 3000 多行...实际上我在 2 个表中遇到了这个问题,其中一个确实包含 NULL,尽管在另一个表中我使用这个并且有NULL,我没有问题,所以我不认为这是问题
-
符号是字符串,但是是哪种:varchar、char、text?在您的问题中添加
desc table1或show create table table1的输出。并添加一些Symbol的真实值。