gpt4 book ai didi

sql - 如果 select 返回 null,则使用默认值插入

转载 作者:行者123 更新时间:2023-12-02 06:56:46 24 4
gpt4 key购买 nike

我有一个包含非空字段的表,我希望从另一个表中填充该字段。麻烦的是对其他表的查询可能会返回 null。当查询返回 null 时,我如何获得一个值(0 就可以)?我的查询是:

update Packages
set PackageTypeId = (SELECT TOP 1 PackageTypeId
FROM PackageTypes
WHERE Packages.PackageTypeName = PackageTypes.Name
ORDER BY PackageTypeId ASC)

我尝试使用 coalesce,但它仍然失败:

update Packages
set PackageTypeId = (SELECT TOP 1 coalesce(PackageTypeId, 0) as id
FROM PackageTypes
WHERE Packages.PackageTypeName = PackageTypes.Name
ORDER BY PackageTypeId ASC)

有什么想法吗?

最佳答案

update Packages 
set PackageTypeId = coalesce((SELECT TOP 1 PackageTypeId FROM PackageTypes
WHERE Packages.PackageTypeName = PackageTypes.Name
ORDER BY PackageTypeId ASC), 0)

关于sql - 如果 select 返回 null,则使用默认值插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29643550/

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