是否有内联选项在T-SQL中检查null和空白?

时间:2014-03-27 16:04:52

标签: sql tsql

我有一个WebForms应用程序,它将以下错误结果集绑定到数据网格。

    SELECT missing.ID, '--Not Found--', '--Not Found--', 'Timeclock ID ('+missing.TimeClock_System_ID+') not found' AS ErrorMessage
    FROM @StudentRecords missing 
    WHERE missing.Registration_ID IS NULL

最后一列创建一个后来绑定到数据网格的字符串,它通常看起来像这样:"找不到时钟ID(1234)"

问题是当missing.TimeClock_System_ID == null时,整个字符串断开并返回""而不是"未找到Timeclock ID()"

我目前的解决方法是:

ISNULL ( missing.TimeClock_System_ID , 'NULL' )

但是当值为空字符串时会出现故障。

提前致谢:)

2 个答案:

答案 0 :(得分:4)

尝试:

ISNULL ( nullif(missing.TimeClock_System_ID,'') , 'NULL' )

答案 1 :(得分:0)

您可以使用case声明:

case 
 when missing.TimeClock_System_Id is null 
      or missing.TimeClock_System_Id = '' then 'NULL'
 else missing.TimeClock_System_Id
end