Parameter | Type | Description |
---|---|---|
test_value | boolean | the boolean value to check |
if_value | any | the value of the expression if the test_value is true |
else_value | any | the value of the expression if the test_value is false |
Returns: any
Example
query:
SELECT sales_agent,
IF(status = "Former", NULL, "Active")
FROM sales_teams
results:
sales_agent | if |
---|---|
Anna Snelling | Active |
Cecily Lampkin | Active |
Mei-Mei Johns | Active |
Violet Mclelland | Active |
Corliss Cosme | Active |
Rosie Papadopoulos | Active |
Garret Kinder | |
Wilburn Farren | Active |
Elizabeth Anderson | Active |
Daniell Hammack | Active |
Calling with a test_value
that is NULL
(or undefined) will not return the
if_value
or the else_value
, but NULL
. This often crops up when doing
a LEFT JOIN
and the joined table doesn’t include a match row.
If you need NULL
values to evaluate as FALSE
, please use COALESCE
:
IF(COALESCE(potentially_undefined_column, FALSE), "true", "false/null/undefined")