是否有类似于COALESCE
但值不是的函数NULL
?
如果它返回字符串字面量,我需要用另一个值替换标量值函数的返回值N/A
。如果它会返回,NULL
我可以使用:
SELECT COALESCE(dbo.GetFirstSsnInFromSsnOut(RMA.IMEI), RMA.IMEI) AS [IMEI to credit]
, OtherColumns
FROM dbo.TableName
但由于它返回,N/A
这不起作用。我也可以使用:
SELECT CASE WHEN dbo.GetFirstSsnInFromSsnOut(RMA.IMEI)='N/A'
THEN RMA.IMEI
ELSE dbo.GetFirstSsnInFromSsnOut(RMA.IMEI)
END AS [IMEI To Credit]
, OtherColumns
FROM dbo.TableName
但这将是低效的,因为它需要每条记录执行两次该函数。
请注意,此查询位于表值函数中。