gpt4 book ai didi

sql - 非 NULL 值的 ISNULL/COALESCE 对应物

转载 作者:行者123 更新时间:2023-12-04 13:43:46 25 4
gpt4 key购买 nike

有没有类似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

但这将是低效的,因为它需要为每个记录执行两次该函数。

请注意,此查询位于表值函数中。

最佳答案

也许你可以使用 NULLIF函数,例如:

SELECT ISNULL(NULLIF(dbo.GetFirstSsnInFromSsnOut(RMA.IMEI), 'N/A'), RMA.IMEI) AS [IMEI to credit]
, OtherColumns
FROM dbo.TableName;

关于sql - 非 NULL 值的 ISNULL/COALESCE 对应物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19998850/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com