declare @a int
declare @b int
declare @c intset @a=10
set @b=5
--set @c=2select @a-@b-case when @c is null then 0 else @c end
declare @b int
declare @c intset @a=10
set @b=5
--set @c=2select @a-@b-case when @c is null then 0 else @c end
check_expression表示将被检查是否为 NULL的表达式。check_expression 可以是任何类型的。replacement_value表示在 check_expression 为 NULL时将返回的表达式。replacement_value 必须与 check_expresssion 具有相同的类型。 因此按你的要求可以写成:A-B-ISNULL(C,0)
没错
最好alter table
把这个字段提供一个default '0'
以后就不会这个问题了