gpt4 book ai didi

sql - 当子查询不存在数据时,ISNULL 或 sql server 中的任何替代方法

转载 作者:行者123 更新时间:2023-12-02 03:43:17 25 4
gpt4 key购买 nike

我有一种情况,我需要获取一些数据,以防找不到某个查询的数据。例如

select id from abc where userid='XYZ'

在这种情况下,只有表 abc 中存在具有 userid='XYZ' 的记录时,我才会获取 ID。

仅当 id 为 null 时,下面给出的代码才会给出 123。这不是我所期望的。

select isnull(id,123) from abc where userid='XYZ'

我想要这样的东西:
如果 abc 中没有用户标识为'XYZ'的数据,那么应该输出一些特定的值。
例如

select isnull((select id from abc where userid='XYZ'),123)

上述查询是否有类似的快捷方式?请建议。提前致谢

最佳答案

isnull 在“列”级别工作,您需要的是如果某行为空,则打印其他内容。

我会使用“虚拟”选择 UNION ALL 您的选择,该选择只包含一行您想要显示的数据,以防万一没有任何返回,然后从中选择前 1 个订单。喜欢

select top 1 id
from (
select id, 1 from abc where userid='XYZ'
UNION ALL
select 123, 0
) X
order by 1 DESC

关于sql - 当子查询不存在数据时,ISNULL 或 sql server 中的任何替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18871856/

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