获取特定条件的列的总和

时间:2016-09-09 13:36:10

标签: sql-server tsql sum aggregate

这是我的表格列:

  • Id(int)
  • A(int)
  • B(int)

我想使用T-SQL通过以下特定条件计算总和:

  • 如果列B不为null,则将其值添加到sum
  • 如果列B为空,则将列A的值添加到总和

如何在不以有效方式更新原始数据的情况下计算总和?

提前致谢,

1 个答案:

答案 0 :(得分:3)

使用和时的情况。试试这样,

SELECT sum(CASE 
            WHEN B IS NOT NULL
                THEN B
            ELSE A
            END)
FROM Mytable