小编Kub*_*uba的帖子

使用Sql server case语句传递给substring函数的长度参数无效

在case语句中使用它时,我遇到了substring函数的问题.

select              
case when -1<0 then 'ok' else SUBSTRING('abcd',1,-1) end
Run Code Online (Sandbox Code Playgroud)

给我一个问题:传递给substring函数的长度参数无效.

自第一个条件满足以来,为什么案件会"看"其他条件?

另一方面查询:

declare @a int;
set @a=-1

select              
@a,
case when @a<0 then 'ok' else SUBSTRING('abcd',1,@a) end
Run Code Online (Sandbox Code Playgroud)

提出正确答案'确定'没有任何错误.

sql-server case

1
推荐指数
1
解决办法
297
查看次数

标签 统计

case ×1

sql-server ×1