有没有办法在SQL中以数学方式使用条件的结果?

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

我想在数学上使用测试结果来决定是否将值设置为不同的数字(如果它恰好为零或其他)。

例如,如果我发出类似这样的东西:SELECT(1 = 1)* 100 AS值我希望得到的结果为100或-100(后者是我记得Commodore Basic工作的方式)。但相反,我在等号上得到语法错误。有没有办法在MSSQL中执行此操作以简化我的查询?

sql-server tsql algebra
1个回答
1
投票

你可以使用案例

SELECT (case when 1=1 then 1 else -1 end)* 100

您也可以使用iif(仅适用于SQL Server 2012或更高版本)

SELECT iif(1=1,1 ,-1)* 100
© www.soinside.com 2019 - 2024. All rights reserved.