gpt4 book ai didi

tsql - 为什么在 case 语句中进行强制转换?

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

为什么当你运行这个时,你得到 2.00 作为答案?

declare @temp int  = 2
select CASE WHEN @temp = 1 THEN cast(@temp as decimal(5, 2))
WHEN @temp = 2 THEN @temp
ELSE NULL
END

但是如果你运行它,当只选择@temp2 时你会得到 2 作为答案

declare @temp2 int = 2
select CAST(@temp2 as decimal(5,2))
select @temp2

桥是正确的:

返回 result_expressions 和可选的 else_result_expression 类型集中最高优先级的类型。 ( Source )

Data Type Precedence

最佳答案

参见 http://msdn.microsoft.com/en-us/library/ms181765.aspx部分返回类型。采用最高优先级类型。

关于tsql - 为什么在 case 语句中进行强制转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10952055/

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