Logical Functions
CHOOSE
Returns the item at the specified index from a list of values. If index exceeds the bounds of values then NULL is returned.
Parameters:
-
index: integer, index to item invalues. 1-based. -
values: any type, comma separated listSELECT CHOOSE (1, ‘apples’, ‘pears’, ‘oranges’, ‘bananas’) AS chosen_result
chosen_result apples
IIF
Returns one of two values, depending on whether a given Boolean expression evaluates to true or false.
Parameters:
-
boolean_expressionevaluated to dtermine what value to return -
true_valuereturned ifboolean_expressionevaluates to true -
false_valuereturned ifboolean_expressionevaluates to falseSELECT IIF (42 > 23, ‘I knew that!’, ‘That is not true.‘) AS iif_result
iif_result I knew that!
IIF may be replaced by a CASE statement. The above example my be written as
SELECT CASE WHEN 42 > 23 THEN 'I knew that!' ELSE 'That is not true.' END AS iif_result
iif_result
------------
I knew that!