关于SQLServer2005中Sum时的一个问题

liujunran 2006-08-02 01:24:07
我有一个值 A 是几个Sum加起来的,有可能其中一个Sum是空的(不是0,是没取到记录直接为空),这种情况下 A 就直接为空了.这种情况怎么处理?谢谢

代码片段如下:
----------------------------------------------------------------------------------
(
(case sum(bp.CONPOINT)when null then 0 else sum(bp.CONPOINT) end )
+(case sum(bp3.CONPOINT) when null then 0 else sum(bp3.CONPOINT) end )
+(case sum(bp2.CONPOINT) when null then 0 else sum(bp2.CONPOINT) end )
+(case (select sum(ad.POINT) from JFXT_AWARDDETAIL ad
where ad.MEMBERNAME = point.MEMBERNAME
AND ad.AWARDTIME >= '2006-08-24 00:00:00.000'
AND ad.AWARDTIME <= '2006-08-30 00:00:00.000'
) when null then 0
else (select sum(ad.POINT) from JFXT_AWARDDETAIL ad
where ad.MEMBERNAME = point.MEMBERNAME
AND ad.AWARDTIME >= '2006-08-24 00:00:00.000'
AND ad.AWARDTIME <= '2006-08-30 00:00:00.000') end
)) as newEncashPoint
--------------------------------------------------------------------------------------
...全文
221 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
liujunran 2006-08-02
  • 打赏
  • 举报
回复
谢谢jetdw,已给分
jetdw 2006-08-02
  • 打赏
  • 举报
回复
SQL Server里边一般要用 sum(isnull(字段名,0))
liujunran 2006-08-02
  • 打赏
  • 举报
回复
忘了说了:
当一个Sum为空时,在DBArtisan中可以计算出,在SQLBrowser中计算不出,将SQL语句拼装到Eclipse也计算不出.
turenjie 2006-08-02
  • 打赏
  • 举报
回复
不理解!

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧