如果以下SQL返回1
?
NULL
像(伪代码):
if sql return NULL value
then set value to one
otherwise returning sql result value.
如果SQL结果为NULL,是否有用于将默认值定义为1的SQL?
SELECT Max(iCategoryOrder)+1
FROM [IVRFlowManager].[dbo].[tblCategory]
WHERE iCategoryLevel = 1
答案 0 :(得分:5)
选项1
使用ISNULL()
<强>描述强>
用指定的替换值替换NULL。
SELECT MAX(ISNULL(iCategoryOrder, 0))+1
FROM [IVRFlowManager].[dbo].[tblCategory]
WHERE iCategoryLevel = 1
选项2
SELECT MAX(COALESCE(iCategoryOrder, 0))+1
FROM [IVRFlowManager].[dbo].[tblCategory]
WHERE iCategoryLevel = 1
<强>描述强>
返回其参数中的第一个非空表达式。
答案 1 :(得分:4)
使用ISNULL运算符,如:
ISNULL(your_field, 1)
请尝试以下操作:
Select ISNULL(Max(iCategoryOrder), 0) + 1
from [IVRFlowManager].[dbo].[tblCategory]
where iCategoryLevel = 1