Skip to main content
Version: 2.5

if

Description

If expr1 evaluates to TRUE, returns expr2. Otherwise, returns expr3.

Syntax

if(expr1,expr2,expr3);

Parameters

expr1: the condition. It must be a BOOLEAN value.

expr2: This value is returned if the condition is true. This expression must evaluate to any of the following data types: BOOLEAN, TINYINT, SMALLINT, INT, BIGINT, LARGEINT, FLOAT, DOUBLE, DATETIME, DATE, DECIMALV2, DECIMAL32, DECIMAL64, DECIMAL128, VARCHAR, BITMAP, PERCENTILE, HLL, TIME.

expr3: This value is returned if the condition is false. The data type is the same as expr2.

expr2 and expr3 must agree in data type.

Return value

The return value has the same type as expr2.

Examples

mysql> select if(false,1,2);
+-----------------+
| if(FALSE, 1, 2) |
+-----------------+
| 2 |
+-----------------+
1 row in set (0.00 sec)