网站换dns,网站 白名单,wordpress主题转换,锦州建设信息网站转载自 MySQL ifnull()函数
MySQL IFNULL函数简介
MySQL IFNULL函数是MySQL控制流函数之一#xff0c;它接受两个参数#xff0c;如果不是NULL#xff0c;则返回第一个参数。 否则#xff0c;IFNULL函数返回第二个参数。
两个参数可以是文字值或表达式。
以下说明了IF…转载自 MySQL ifnull()函数
MySQL IFNULL函数简介
MySQL IFNULL函数是MySQL控制流函数之一它接受两个参数如果不是NULL则返回第一个参数。 否则IFNULL函数返回第二个参数。
两个参数可以是文字值或表达式。
以下说明了IFNULL函数的语法
IFNULL(expression_1,expression_2);如果expression_1不为NULL则IFNULL函数返回expression_1; 否则返回expression_2的结果。
IFNULL函数根据使用的上下文返回字符串或数字。
如果要返回基于TRUE或FALSE条件的值而不是NULL则应使用IF函数。
MySQL的IFNULL函数示例
请参见以下IFNULL函数示例
示例-1
SELECT IFNULL(1,0); -- returns 1示例-2
SELECT IFNULL(,1); -- returns 示例-3
SELECT IFNULL(NULL,IFNULL function); -- returns IFNULL function上面示例中的语句是怎么运行的
IFNULL(1,0)返回1因为1不为NULL。IFNULL(1)返回因为字符串不为NULL。IFNULL(NULLIFNULL function)返回IFNULL函数字符串因为第一个参数为NULL。 我们来看一下使用IFNULL函数的实例。
首先使用以下语句创建一个名为contacts的新表
USE testdb;
CREATE TABLE IF NOT EXISTS contacts (contactid INT AUTO_INCREMENT PRIMARY KEY,contactname VARCHAR(20) NOT NULL,bizphone VARCHAR(15),homephone VARCHAR(15)
);每个联系人都有一个名字业务电话和家庭电话。
其次将数据插入到contacts表中
INSERT INTO contacts(contactname,bizphone,homephone)
VALUES(John Doe,(541) 754-3009,NULL),(Cindy Minsu,NULL,(541) 754-3110),(Sue Greenspan,(541) 754-3010,(541) 754-3011),(Lily Bush,NULL,(541) 754-3111);一些联系人只有家庭电话或商务电话。要从contacts表中获取所有联系人姓名和电话请使用以下查询
SELECT contactName, bizphone, homephone
FROMcontacts;执行上面查询语句得到以下结果 -
-----------------------------------------------
| contactName | bizphone | homephone |
-----------------------------------------------
| John Doe | (541) 754-3009 | NULL |
| Cindy Minsu | NULL | (541) 754-3110 |
| Sue Greenspan | (541) 754-3010 | (541) 754-3011 |
| Lily Bush | NULL | (541) 754-3111 |
-----------------------------------------------
4 rows in set如果联系人的商务电话不可用可以通过查询获得联系人的家庭电话也是一个获取联系方式的办法 -
SELECT contactname, IFNULL(bizphone, homephone) phone
FROMcontacts;这可以使用IFNULL()函数来解决。如果bizphone为NULL则IFNULL函数将返回homephone的值。
第三使用以下查询获取所有联系人的姓名和电话
mysql SELECT contactname, IFNULL(bizphone, homephone) phone
FROMcontacts;
-------------------------------
| contactname | phone |
-------------------------------
| John Doe | (541) 754-3009 |
| Cindy Minsu | (541) 754-3110 |
| Sue Greenspan | (541) 754-3010 |
| Lily Bush | (541) 754-3111 |
-------------------------------
4 rows in set请注意应避免在WHERE子句中使用IFNULL函数因为它会降低查询的性能。
如果要检查值是否为NULL则可以在WHERE子句中使用IS NULL或IS NOT NULL。
在本教程中我们向您介绍了MySQL IFNULL函数并向您展示了如何在查询中使用IFNULL函数。