读书人

sqlServer中Sum函数碰到null不做了?该

发布时间: 2012-02-19 19:43:39 作者: rapoo

sqlServer中Sum函数碰到null不做了?
在SQLServer2000中测试如下:
如一表Table ,A,b,c,d字段
A字符,b,c,d为int

Select a,sum(b+c+d) as e
from Table1
group by a

如果,其中一个为NULL,则系统计算结果也为NULL,即b,c,d中一个为NULL,则sum(b+c+d) 结果为NULL
这是为何?怎么避免此问题?


[解决办法]
Select a,sum(isnull(b,0)+isnull(c,0)+isnull(d,0)) as e
from Table1
group by a

[解决办法]
在SQL 里NULL 与任何字符 数字 相加减都为null

Select a,sum(isnull(b,0)+isnull(c,0)+isnull(d),0) as e
from Table1
group by a
[解决办法]
Select a,sum(isnull(b,0)+isnull(c,0)+isnull(d,0)) as e
from Table1
group by a
[解决办法]
用isnull即可

读书人网 >SQL Server

热点推荐