在SQL中添加列

时间:2014-10-08 15:42:28

标签: sql select arithmetic-expressions

我在选择查询中有这个等式

  

监控费用“+”CCN费用“+”WkRpt费用“+”MonRpt费用“+”客户仪表板费“+”取   控制服务器费用“+”补丁管理服务器费用“+”远程后台服务器费用“
  作为“总上限服务器费用”

我看到的一个问题是,只有在每个列中都有值时它才会添加,但即使没有数据我也需要添加它。

对于远程后台服务器,费用在2013年9月之前不会启动。因此总上限服务器费用等式不是添加其他内容,直到有所有值的值,因此它始于2013年9月而不是所有年份。

1 个答案:

答案 0 :(得分:1)

有些列正在返回NULL。您需要使用ISNULL返回0而不是NULL。例如:

ISNULL("Monitoring Fees", 0) + 
ISNULL("CCN Fees", 0) + 
ISNULL("WkRpt Fees", 0) + 
ISNULL("MonRpt Fees", 0) + 
ISNULL("Client Dashboard Fees", 0) + 
ISNULL("Take Control Servers Fees", 0) + 
ISNULL("Patch Management Servers Fees", 0) + 
ISNULL("Remote Background Servers Fees", 0) as "Total Capped Server Fees"

我假设您使用的是SQL Server。

如果您使用的是MySQL,则等效函数为IFNULL。例如:

IFNULL("Monitoring Fees", 0) + 
IFNULL("CCN Fees", 0) + 
IFNULL("WkRpt Fees", 0) + 
IFNULL("MonRpt Fees", 0) + 
IFNULL("Client Dashboard Fees", 0) + 
IFNULL("Take Control Servers Fees", 0) + 
IFNULL("Patch Management Servers Fees", 0) + 
IFNULL("Remote Background Servers Fees", 0) as "Total Capped Server Fees"