逻辑和数学函数

SQL 有两个逻辑函数 - CHOOSEIIF

CHOOSE 函数根据列表中的位置从值列表中返回一个项目。该位置由索引指定。

在语法中,index 参数指定项目,并且是整数或整数。val_1 … val_n 参数标识值列表。

SELECT CHOOSE(2, 'Human Resources', 'Sales', 'Admin', 'Marketing' ) AS Result;
结果
销售

在此示例中,你使用 CHOOSE 函数返回部门列表中的第二个条目。

IIF 函数根据特定条件返回两个值中的一个。如果条件为真,则返回 true 值。否则它将返回 false 值。

在语法中,boolean_expression 参数指定布尔表达式。true_value 参数指定 boolean_expression 求值为 true 时应返回的值,false_value 参数指定 boolean_expression 求值为 false 时应返回的值。

SELECT BusinessEntityID, SalesYTD, 
       IIF(SalesYTD > 200000, 'Bonus', 'No Bonus') AS 'Bonus?'
FROM Sales.SalesPerson
GO
BusinessEntityID SalesYTD 奖金?
274 559697.5639 奖金
275 3763178.1787 奖金
285 172524.4512 没有奖金

在此示例中,你使用 IIF 函数返回两个值之一。如果销售人员的年初至今销售额超过 200,000,则此人将有资格获得奖金。低于 200,000 的价值意味着员工没有资格获得奖金。

SQL 包括几个数学函数,可用于对输入值执行计算并返回数值结果

一个例子是 SIGN 函数,它返回一个表示表达式符号的值。值 -1 表示否定表达式,值+1 表示正表达式,0 表示零表示。

SELECT SIGN(-20) AS 'Sign'
标志
-1

在示例中,输入是负数,因此结果窗格将结果列为 -1。

另一个数学函数是 POWER 函数。此函数提供表达式的值,使其达到指定的幂。

在语法中,float_expression 参数指定表达式,y 参数指定要将表达式提升到的幂。

SELECT POWER(50, 3) AS Result
结果
125000