функция преобразования из Access SQL в T-SQL 2005 - PullRequest
2 голосов
/ 05 мая 2010

Может кто-нибудь преобразовать эту функцию 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 ]

2 голосов
/ 05 мая 2010
SELECT
    CASE 
        WHEN ISNULL([Selling Price],0) = 0 THEN 0
        ELSE ([Selling Price] - ISNULL([Cost],0))/[Selling Price]
    END AS fieldName
FROM TableName
1 голос
/ 05 мая 2010
CASE 
   WHEN ISNULL([Selling Price], 0) = 0 THEN 0
   ELSE ([Selling Price] - ISNULL([Cost], 0)) / [Selling Price] 
END
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...