2014-11-05 134 views
0

这里是SQL:SQL case语句“被零除”处理忽略条件THEN 0

CASE 
    WHEN Field1 = 0 THEN 0 
    ELSE SUM((Field1 - Field2 * Field3)/Field1) 
END 

这和它的变体的任意时间均为零误差字段1 = 0

需要返回的鸿沟放眼望去,我相信答案是显而易见的。

感谢

+0

您正在使用什么数据库管理系统? – 2014-11-05 04:45:21

+0

MS SQL Server 2012 – 2014-11-05 05:25:44

回答

6

尝试包裹在外的总和:

sum(CASE WHEN Field1 = 0 THEN 0 ELSE ((Field1 - Field2 * Field3)/Field1) END)

+0

Simon1979,做了诡计,非常感谢您的快速回复和教训。干杯 – 2014-11-05 05:28:00