将函数从Access SQL转换为T-SQL 2005

时间:2010-05-05 11:03:05

标签: tsql ms-access function

有人可以转换此访问sql函数让我在t-sql 2005中工作。

我想把售价减去成本作为一个数字。并按原始售价除以产生第二个数字

谢谢:)

 =IIf([Selling Price]=0,0,([Selling Price]-Nz([Cost]))/[Selling Price])
IIRC它应该是符合的;

ISNULL((ISNULL([Selling Price],0) - ISNULL(Cost,0)),0) / ISNULL([Selling Price],0) AS Margin

但是在这里我得到零误差。

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

SELECT
    CASE 
        WHEN ISNULL([Selling Price],0) = 0 THEN 0
        ELSE ([Selling Price] - ISNULL([Cost],0))/[Selling Price]
    END AS fieldName
FROM TableName

答案 1 :(得分:1)

CASE 
   WHEN ISNULL([Selling Price], 0) = 0 THEN 0
   ELSE ([Selling Price] - ISNULL([Cost], 0)) / [Selling Price] 
END