再请问求下面2列的和的语句怎么写?

itmingong 2006-07-31 11:23:15
select SUM(CASE COL1 WHEN 'VAL1' THEN COL2 END) AS R1,SUM(CASE COL1 WHEN 'VAL2' THEN COL2
END) AS R2
FROM T1
上面的语句是没有问题的,求出的2个和作为2个列,我现在想把R1加R2的和列出来怎么做啊?
-- 不用子查询只能加表达式

select
SUM(CASE COL1 WHEN 'VAL1' THEN COL2 END) AS R1,
SUM(CASE COL1 WHEN 'VAL2' THEN COL2 END) AS R2,
SUM(CASE COL1 WHEN 'VAL1' THEN COL2 END) +
SUM(CASE COL1 WHEN 'VAL2' THEN COL2 END) AS R3
FROM T1
这样是可以的,但如果R1或R2里面只要有一个是NULL值的话,R3就会是NULL,怎么解决啊?
...全文
134 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
itmingong 2006-07-31
  • 打赏
  • 举报
回复
结贴!
itmingong 2006-07-31
  • 打赏
  • 举报
回复
哇,老大一直都在啊,好快,呵呵,谢了!
zjcxc 2006-07-31
  • 打赏
  • 举报
回复

select
SUM(CASE COL1 WHEN 'VAL1' THEN COL2 END) AS R1,
SUM(CASE COL1 WHEN 'VAL2' THEN COL2 END) AS R2,
ISNULL(SUM(CASE COL1 WHEN 'VAL1' THEN COL2 END), 0) +
ISNULL(SUM(CASE COL1 WHEN 'VAL2' THEN COL2 END), 0) AS R3
FROM T1

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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