SELECT IIF(ISNULL(MAX((AttTmpInOutFrmMachine.AttId))),0,MAX((AttTmpInOutFrmMachine.AttId)))+1
FROM AttTmpInOutFrmMachine
答案 0 :(得分:2)
ISNull
中的第二个参数是当您的字段数据实际为空时将使用的值。例如:
IsNUll(someint, 0)
如果someint不为null,则返回someint,否则返回0
答案 1 :(得分:0)
这就够了
SELECT ISNULL(MAX(AttTmpInOutFrmMachine.AttId),0)+1 FROM AttTmpInOutFrmMachine
答案 2 :(得分:0)
第一个是应该针对null
检查的值,第二个是应该替换null
的值。
请参阅here了解ms-sql
的例外情况语法
ISNULL(check_expression,replacement_value)
参数check_expression要检查表达式是否为NULL。 check_expression可以是任何类型。 replacement_value是
如果check_expression为NULL,则返回表达式。 replacement_value必须是可隐式转换为的类型 check_expresssion的类型。
答案 3 :(得分:0)
因为IIF的语法是:
IIF ( boolean_expression, true_value, false_value )
我认为你正在寻找下面的逻辑:
SELECT IIF(ISNULL(MAX(AttTmpInOutFrmMachine.AttId),0)=0
,0
,MAX(AttTmpInOutFrmMachine.AttId))+1 as NextAttId
FROM AttTmpInOutFrmMachine