将解码Substr Oracle查询转换为SQL Server

问题描述 投票:0回答:1

我有一个Oracle查询,我试图将其转换为SQL Server 2012,但发现很难看到如何实现同一目标。

有问题的SQL是:

SELECT decode( substr(a.Code, 1, 8), 'APP VARY', 'C', 'B') AS Value1
From tblA a

如果我理解正确,DECODE是在SQL Server中执行IIF的ORACLE方法。所以我想我可以使用类似的东西:

Select IIF(SUBSTRING(a.Code,1,8)='APP VARY','C','B') as Value1

看起来不错吗?

任何人都知道如何在SQL Server中实现同一目标?

sql-server tsql database-migration
1个回答
0
投票

如注释中所指出,似乎case表达式就是您想要的,例如

case

注意:并用case substring(a.Code, 1, 8) when 'APP VARY' then 'C' else 'B' end 替换substr

© www.soinside.com 2019 - 2024. All rights reserved.