В SQL Server вы должны использовать:
alter table zgodnosc add proba as (case when Imiana_1_postoj] = 0 then -50 else Zmiana_1 end) ;
Тип не требуется. В дополнительных скобках нет необходимости. Я обычно включаю их по двум причинам. Во-первых, они нужны для check
ограничений. Во-вторых, они хорошо справляются с визуальным ограничением выражения.
Если вам нужен конкретный тип, вы можете преобразовать / преобразовать:
alter table zgodnosc add proba as (convert(float, (case when Imiana_1_postoj] = 0 then -50 else Zmiana_1 end))
Примечание: я настоятельно не рекомендую использовать IIF()
. Он был введен в SQL Server для обратной совместимости с MS Access. CASE
- стандартный метод обработки условных логарифмов c в SQL.