我想在数学上使用测试结果来决定是否将值设置为另一个数字(如果它恰好是零)或其他。
例如,如果我发出这样的信息:SELECT(1 = 1)* 100 AS值 我希望将值赋为100或-100(后者是我记得Commodore Basic工作的方式)。但是相反,我在等号上收到语法错误。有没有一种方法可以在MSSQL中简化我的查询?
答案 0 :(得分:1)
您可以在以下情况下使用案例
SELECT (case when 1=1 then 1 else -1 end)* 100
您还可以使用iif
(仅适用于SQL Server 2012或更高版本)
SELECT iif(1=1,1 ,-1)* 100