【问题标题】:Is there a way to use the result of conditions mathematically in TSQL?有没有办法在 SQL 中以数学方式使用条件结果?
【发布时间】:2019-04-15 18:37:37
【问题描述】:

我想使用数学测试的结果来决定是否将一个值设置为不同的数字,如果它恰好为零或其他什么。

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

【问题讨论】:

标签: sql-server tsql algebra


【解决方案1】:

你可以用 case when

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

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

SELECT iif(1=1,1 ,-1)* 100

【讨论】:

    猜你喜欢
    • 2020-04-27
    • 2013-04-06
    • 1970-01-01
    • 1970-01-01
    • 2019-02-05
    • 1970-01-01
    • 1970-01-01
    • 2017-06-22
    • 1970-01-01
    相关资源
    最近更新 更多