邏輯和數學函式
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 |