gpt4 book ai didi

sql - 如何从表中获取 int 列数据类型的结果,如果没有找到记录,则在 microsoft sql azure 中选择 0 作为默认值

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

如何从表中获取 int 列数据类型的结果,如果没有找到记录,则在 microsoft sql azure 中选择 0 作为默认值

我尝试过 ISNULL 但不起作用。

如果有一个名为学生的表。

列名称数据类型

roll_nbr 整数

名称 varchar(30)

选择 ISNULL(roll_nbr,0) FROM 学生,其中 name = 'Sam;

我希望查询从表中返回 roll_nbr(如果存在),否则如果未找到行,则默认返回 0。

最佳答案

您可以如下修改 Azure Sql 查询

使用 COALESCE()

SELECT COALESCE((SELECT Roll_nbr FROM student WHERE NAME = 'Sam'), 0);

(http://sqlfiddle.com/#!18/9a6eaf/2)

如果满足where条件,子查询将返回RollNumber,否则将返回空白/空结果。在子查询上使用 COALESCE 函数将返回第一个非空值。

使用 ISNULL()

SELECT ISNULL((SELECT Roll_nbr FROM student WHERE NAME = 'Sam'), 0)

http://sqlfiddle.com/#!18/9a6eaf/6

Instead of COALESCE() ISNULL() can be used.ISNULL function accepts only 2 arguments, used to replace null value and it is T-SQL function.COALEASCE function is ANSI SQL Standard based and it accepts 1-n arguments it returns first not null value.

关于sql - 如何从表中获取 int 列数据类型的结果,如果没有找到记录,则在 microsoft sql azure 中选择 0 作为默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75439761/

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