逻辑和数学函数
SQL 有两个逻辑函数 - CHOOSE
和 IIF
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 |