MySQL中的isnull、ifnull和nullif函数用法
isnull(expr)
如expr为null,那么isnull()的返回值为1,否则返回值为0。
mysql>select isnull(1+1);
->0
mysql>select isnull(1/0);
->1
使用=的null值对比通常是错误的。
isnull()函数同is null比较操作符具有一些相同的特性。请参见有关is null 的说明。
ifnull(expr1,expr2)
假如expr1不为NULL,则IFNULL()的返回值为expr1; 否则其返回值为expr2。IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境。
mysql>SELECT IFNULL(1,0);
->1
mysql>SELECT IFNULL(NULL,10);
->10
mysql>SELECT IFNULL(1/0,10);
->10
mysql>SELECT IFNULL(1/0,'yes');
->'yes'
ifnull(expr1,expr2)的默认结果值为两个表达式中更加“通用”的一个,顺序为STRING、REAL或INTEGER。假设一个基于表达式的表的情况,或MySQL必须在内存储器中储存一个临时表中IFNULL()的返回值:
CREATE TABLE tmp SELECT IFNULL(1,'test') AS test;
在这个例子中,测试列的类型为 CHAR(4)。
nullif(expr1,expr2)
如果expr1=expr2成立,那么返回值为NULL,否则返回值为expr1。这和
CASE WHEN expr1=expr2 THEN NULL
ELSE
expr1
END相同。
mysql>SELECT NULLIF(1,1);
->NULL
mysql>SELECT NULLIF(1,2);
->1
如果参数不相等,则MySQL两次求得的值为expr1 。
一、IF函数
表达式:IF(expr1,expr2,expr3)
满足条件expr1即条件expr1返回true
则expr2否则就是expr3 返回false
作为排序条件使用时 放在order by 后
eg:
1. SELECT IF(1=1,2,3); 则输出2
2.SELECT IF(1=2,2,3);则输出3
select * from test_table order by if(ISNULL(idcard),1,0)
二、IFNULL函数
表达式:IFNULL(expr1,expr2)
如果expr1值为NULL,则输出expr2
如果expr1值不为空则输出expr1本身
eg:
1.SELECT IFNULL(null,”2”);则输出2
2.SELECT IFNULL(3,”2”);则输出3
三、is not null函数
select * from test where name is not null;
四、isnull(expr) 的用法:
如expr 为null,那么isnull() 的返回值为 1,否则返回值为 0。
转载于:https://www.cnblogs.com/jeffen/p/7016575.html
MySQL中的isnull、ifnull和nullif函数用法相关推荐
- MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用
在MySQL中可以使用IF().IFNULL().NULLIF().ISNULL()函数进行流程的控制. 1.IF()函数的使用 IF(expr1,expr2,expr3),如果expr1的值为tru ...
- revoke mysql_浅谈MySQL中授权(grant)和撤销授权(revoke)用法详解
MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利 grant selec ...
- mysql revoke 授权_浅谈MySQL中授权(grant)和撤销授权(revoke)用法详解
MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利 grant selec ...
- python中all函数的用法_python中map、any、all函数用法分析
这篇文章主要介绍了 python 中 map . any . all 函数用法 , 实例分析了 map . any . all 函数 的相关使用技巧 , 具有一定参考借鉴价值 , 需要的朋友可以参考下 ...
- php debug_print_backtrace,php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
本文实例讲述了php中debug_backtrace.debug_print_backtrace和匿名函数用法.分享给大家供大家参考.具体分析如下: debug_print_backtrace() 是 ...
- oracle中trim,ltrim,rtrim函数用法(简单易懂)
oracle中trim,ltrim,rtrim函数用法 用法一.去空格 函数 作用 TRIM TRIM()去除指定字符串的前后空格 LTRIM LTRIM()去除指定字符串的前面空格 RTRIM RT ...
- 【MySQL】MySQL的IFNULL()、ISNULL()、NULLIF()函数用法说明
文章目录 一.IFNULL() 函数 二.ISNULL() 函数 三.NULLIF() 函数 四.总结 五.相关推荐 一.IFNULL() 函数 MySQL IFNULL 函数是 MySQL 控制流函 ...
- mysql中ISNULL(),IFNULL()和NULLIF()的区别
一.ISNULL()函数只有一个参数,判断参数是否为null ① 当参数不为null时,比如'0'或任意字符串等,函数结果为0: ② 当参数为null时.结果为1 二.IFNULL()函数需要传入两个 ...
- Mysql 中 “必知” 的单行处理函数
Mysql 中必知的单行函数 每博一文案 钱钟书就曾感慨道,在我一知半解的几国语言中,没有比中国古语 所谓的素交,更能表现出友谊骨髓,素是一切颜色的基础,同时也是 一切颜色的调和,像白日包含了基色,真 ...
- 关于IFNULL()和NULLIF()函数的区别
在MySQL中,IFNULL()和NULLIF()都是用于处理NULL值的函数,但它们的功能略有不同. IFNULL():此函数接受两个参数,如果第一个参数不为NULL,则返回该参数:否则返回第二个参 ...
最新文章
- 构建一个移动应用程序要花多少钱?
- 独家 | 一文读懂Corda分布式记账技术
- db2 mysql sql server_下文给大家介绍mysql数据库介绍,具体详情如下所示:MySQL数据库:Oracle、DB2、SQL Server、MySQL、access、mang...
- 【51nod - 1076】2条不相交的路径(Tarjan无向图判环)
- Spring Boot的启动器Starter详解
- xml转化为kml_借助ogr2ogr工具实现shp文件转换kml格式
- CentOS5.8分区与文件系统
- 使用微信公众号实现扫码开门
- 收藏夹吃灰了:GitHub 上值得收藏的100个精选前端项目!
- 微信 css3动画失效,css3 动画效果在微信中无效
- QLV转MP4格式转换器在线免费的方法有哪些
- 不规则数据排序 Python sort sorted
- 压缩为王-阿里第五届中间件复赛总结
- 【第1111期】Subresource Integrity 介绍
- 人力资源和社会保障部——拟新增职业“密码技术应用员”
- i9 13900hx和r7 7735h选哪个 酷睿i913900hx和锐龙r77735h对比
- 【C++】memset函数
- 2022年湖南成人高考答题卡简介及结构介绍
- ASP.NET下FCKeditor配置方法全解
- 这几个质量超高的自学网站,每天逛10分钟,年薪百万不是问题!
热门文章
- python 中的运算符重载
- php ajax 域名查询,PHP+AJAX 域名查询 PHP 源代码
- python vue token_Flask与Vue的token认证
- C语言——指针篇(三)数组的下标引用和指针访问
- 简述中断和 DMA 的区别。
- linux里netstat与ps,理解proc目录与linux进程、ps命令、netstat命令的关系
- clickhouse Aggregatingmergetree表引擎
- QT_QTableWidget增删改读
- 12.1 LNMP架构介绍 12.2 MySQL安装 12.3/12.4 PHP安装 12.5 Ng
- Linux下使用rsync最快速删除海量文件的方法分享