MySql 中IFNULL、ISNULL和NULLIF的区别
2016-03-30 14:18
591 查看
一、ISNULL(expr)
如果expr 为NULL,那么ISNULL() 的返回值为 1,否则返回值为 0。
例如
二、IFNULL(expr1,expr2)
1、若expr1不为null,则ifnull()的返回值为expr1;
2、若expr1为null,则返回expr2的值;
例如
->select ifnull(1, 2);
->1;
->select ifnull(null, 2);
->2;
->select ifnull(null, 'test');
->test;
三、nullif(expr1,expr2)
若expr1等于expr2,则返回null,否则返回expr1
例如
mysql>SELECT NULLIF(1,1);
->NULL
mysql>SELECT NULLIF(1,2);
->1
参考资料:MySql 中IFNULL、ISNULL和NULLIF的区别 http://www.studyofnet.com/news/1182.html
一、ISNULL(expr)
如果expr 为NULL,那么ISNULL() 的返回值为 1,否则返回值为 0。
例如
->select isnull(11); ->0; ->select isnull(null); ->1;
二、IFNULL(expr1,expr2)
1、若expr1不为null,则ifnull()的返回值为expr1;
2、若expr1为null,则返回expr2的值;
例如
->select ifnull(1, 2);
->1;
->select ifnull(null, 2);
->2;
->select ifnull(null, 'test');
->test;
三、nullif(expr1,expr2)
若expr1等于expr2,则返回null,否则返回expr1
例如
mysql>SELECT NULLIF(1,1);
->NULL
mysql>SELECT NULLIF(1,2);
->1
参考资料:MySql 中IFNULL、ISNULL和NULLIF的区别 http://www.studyofnet.com/news/1182.html
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法
- MySQL Server 日志
- MySQL 安全事宜
- MySQL 备份与恢复