在SQL Select查询中包含公式

时间:2013-03-18 11:51:05

标签: sql-server divide-by-zero

请帮我解决以下问题。

我需要在从表中获取数据时执行计算。请帮助我。更多的我也得到了零点。

ISNULL(Round(((col4) / (md.col1 + md.col2 + md.col3)), 2), 0) 

先谢谢

3 个答案:

答案 0 :(得分:2)

这将做trrick。除以null时,不会得到div / 0错误:

isnull(Round(((col4)/(NULLIF(md.col1+md.col2+md.col3,0)),2),0) 

答案 1 :(得分:1)

SELECT  CASE
        WHEN md.col1+md.col2+md.col3 = 0 THEN 0 ELSE
        ISNULL(Round(((col4)/(md.col1+md.col2+md.col3)),2),0)
        END AS [CALCULATION_RESULT]

答案 2 :(得分:1)

如何添加:

WHERE (md.col1 + md.col2 + md.col3) > 0

要求您过滤掉Div0记录吗?