我们如何在MySQL表的数据值上应用COALESCE()函数?

如果要COALESCE()在MySQL表的数据值上应用函数,则需要使用列名作为该函数的参数。如果第一列中有NULL值,则它将检查下一个列,依此类推,直到获得非NULL值为止。我们正在使用“员工”表中的数据,以证明上述概念-

mysql> Select * from employee;
+----+------------+-------------+-----------+
| Id | First_Name | Middle_Name | Last_Name |
+----+------------+-------------+-----------+
| 1  | Advik      | NULL        | Jhamb     |
| 2  | Rahul      | Kumar       | Sharma    |
| 3  | Raman      | Singh       | Rajput    |
| 4  | Krishan    | Kumar       | Khurana   |
| 5  | Sachin     | Ramesh      | Tendulkar |
| 6  | NULL       | Kumar       | Gaurav    |
| 7  | NULL       | Singh       | Parmar    |
+----+------------+-------------+-----------+
7 rows in set (0.00 sec)

mysql> Select COALESCE(First_Name, Middle_Name,Last_Name)AS Name FROM Employee;
+---------+
| Name    |
+---------+
| Advik   |
| Rahul   |
| Raman   |
| Krishan |
| Sachin  |
| Kumar   |
| Singh   |
+---------+
7 rows in set (0.03 sec)

在上面的示例中,有三个函数参数,COALESCE()并且上面的查询从First_Name,Middle_Name和Last_Name返回名称,如果First_Name为NULL,则其返回值Middle_Name。然后与Last_Name相同,如果First_Name和Middle_Name具有NULL,则返回Last_Name值。如果三个First_Name,Middle_Name和Last_Name均为NULL,则返回NULL。

猜你喜欢