IF() function in a MySQL Select statement?


The IF() function returns a value based on a condition.

The syntax is as follows−

SELECT IF(yourCondition, yourMessageIfConditionBecomesTrue,yourMessageIfConditionBecomesFalse) from yourTableName;
Let us first create a table:
mysql> create table DemoTable
   (
   Value int
   );
Query OK, 0 rows affected (0.60 sec)

Insert records in the table using insert command −

mysql> insert into DemoTable values(1000);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values(2000);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values(500);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable values(1100);
Query OK, 1 row affected (0.16 sec)

Display all records from the table using select statement −

mysql> select *from DemoTable;

This will produce the following output −

+-------+
| Value |
+-------+
| 1000  |
| 2000  |
| 500   |
| 1100  |
+-------+
4 rows in set (0.00 sec)

Here is the query to implement IF() in MySQL −

mysql> select Value,IF(Value > 1000, CONCAT(Value,' is greater than 1000'),CONCAT(Value,' is lower than 1000')) AS Result from DemoTable;

This will produce the following output−

+-------+---------------------------+
| Value | Result                    |
+-------+---------------------------+
| 1000  | 1000 is lower than 1000   |
| 2000  | 2000 is greater than 1000 |
| 500   | 500 is lower than 1000    |
| 1100  | 1100 is greater than 1000 |
+-------+---------------------------+
4 rows in set (0.00 sec)

Updated on: 30-Jul-2019

281 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements