MySQL-ISNULL()、IFNULL()和NULLIF()函数
以下三个函数都可以用于where子条件,作为数据删除、更新的记录定位依据。
如:
SELECT * FROM usergrade WHERE ISNULL(USERNAME);
一、ISNULL(expr)
如果expr为null,那么isnull()的返回值为1,否则返回值为0。
mysql> select isnull(/) as result;
+--------+
| result |
+--------+
| |
+--------+
row in set (0.00 sec) mysql> select isnull(/) as result;
+--------+
| result |
+--------+
| |
+--------+
row in set (0.00 sec)
使用=的null值对比通常是错误的。
isnull()函数同is null比较操作符具有一些相同的特性。请参见有关is null 的说明。
二、IFNULL(expr1,expr2)
假如expr1不为NULL,不管expr2的值是否为NULL,IFNULL()的返回值为expr1;否则其返回值为expr2。
IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境。
mysql> SELECT IFNULL(,);
+-------------+
| IFNULL(,) |
+-------------+
| |
+-------------+
row in set (0.01 sec) mysql> SELECT IFNULL(NULL,);
+-----------------+
| IFNULL(NULL,) |
+-----------------+
| |
+-----------------+
row in set (0.00 sec) mysql> SELECT IFNULL(/,);
+----------------+
| IFNULL(/,) |
+----------------+
| 10.0000 |
+----------------+
row in set (0.00 sec) mysql> SELECT IFNULL(/,'yes');
+-------------------+
| IFNULL(/,'yes') |
+-------------------+
| yes |
+-------------------+
row in set (0.00 sec) mysql> SELECT IFNULL(,'yes');
+-----------------+
| IFNULL(,'yes') |
+-----------------+
| |
+-----------------+
row in set (0.00 sec)
三、NULLIF(expr)
如果expr1=expr2成立,那么返回值为NULL,否则返回值为expr1。
mysql> select nullif(,);
+-------------+
| nullif(,) |
+-------------+
| NULL |
+-------------+
row in set (0.00 sec) mysql> select nullif('a',);
+---------------+
| nullif('a',) |
+---------------+
| a |
+---------------+
row in set, warning (0.00 sec)
MySQL-ISNULL()、IFNULL()和NULLIF()函数的更多相关文章
- MySQL中 IFNULL、NULLIF和ISNULL函数的用法
mysql 中 ifnull().nullif().isnull()函数的用法讲解: 一.IFNULL(expr1,expr2)用法: 假如expr1不为NULL,则 IFNULL() 的返回值为ex ...
- MySQL中的isnull、ifnull和nullif函数用法
isnull(expr) 如expr为null,那么isnull()的返回值为1,否则返回值为0. mysql>select isnull(1+1); ->0 mysql>selec ...
- MySQL if,ifnull,nullif 函数
一.IF IF(exPR1,expr2,expr3) 如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr ...
- mysql的IFNULL()函数FLOOR(),ROUND()函数
用法说明 1 IFNULL(expr1,expr2) 如果 expr1 不是 NULL,IFNULL() 返回 expr1,否则它返回 expr2. IFNULL()返回一个数字或字符串值,取决于它被 ...
- MySql 里的IFNULL、NULLIF和ISNULL用法
MySql 里的IFNULL.NULLIF和ISNULL用法 mysql中isnull,ifnull,nullif的用法如下: isnull(expr) 的用法: 如expr 为null,那么isnu ...
- MySql 里的IFNULL、NULLIF和ISNULL用法区别
mysql中isnull,ifnull,nullif的用法如下: isnull(expr) 的用法:如expr 为null,那么isnull() 的返回值为 1,否则返回值为 0. mysql> ...
- mysql中isnull,ifnull,nullif的用法
今天用到了MySql里的isnull才发现他和MSSQL里的还是有点区别,现在简单总结一下: mysql中isnull,ifnull,nullif的用法如下: 1. isnull(expr) 的用法: ...
- SQLServer的ISNULL函数和Mysql的IFNULL函数
SQL Serve的ISNULL函数: ISNULL(check_expression,replacement_value) 1.check_expression与replacement_value的 ...
- MySQL中的IFNULL,IF,NULLIF函数
MySQL中的IFNULL函数和IF函数 MySQL中的IFNULL函数类似于Oracle中的NVL函数,其表达式为:IFNULL(expr1,expr2),含义是:如果第一个参数不为空,则返回第一个 ...
随机推荐
- mysql 中通过身份证号码计算年龄
SELECT DATE_FORMAT(NOW(), '%Y') - SUBSTRING( '换成对应身份证',7,4) AS age
- CentOS7 安装 jexus-5.8.2-x64
前要提示: 如果你要安装asp.net 请参考: http://www.cnblogs.com/xiaoruilin/p/7867823.html 背景: CentOS7 Mono (Mono JIT ...
- HMAC-SHA256 签名方法各个语音的实现方式之前端JavaScriptes6
sha256和16进制输出,网上很多种后端的验证方法,几乎没有前端的,所以自己写了个,希望给类似需求的人一个帮助,适用场景 腾讯云接口鉴权 v3签名 npm install sha256npm ins ...
- [archlinux]在linux使用aria2下载磁力链接
1.在公网出口做好dnat,端口映射,虚拟服务等.导致内网主机的udp和tcp端口上. 2.在linux主机上,加两条防火墙规则 ┬─[tong@T7:~]─[:: PM] ╰─>$ sudo ...
- 【转】tars源码漫谈第1篇------tc_loki.h (牛逼哄哄的loki库)
loki库是C++模板大牛Andrei写的, 里面大量运用模板的特性, 而tc_loki.h借用了loki库的部分代码, 形成了一个基本的文件tc_loki.h, 来看看: #ifndef __TC_ ...
- APICloud开发者进阶之路 | txLive模块(直播类)试用分享
本文出自APICloud官方论坛,感谢论坛版主uoaccw的分享 txLive 模块封装了腾讯云直播服务 https://docs.apicloud.com/Client-API/Open-SDK/t ...
- Google 内部代码是不支持异常(Excepton)的,C++ 异常的优劣之处有许多讨论(知乎上的讨论)
最近 Google 开源了其内部多年使用的 C++ 代码库 Abseil 作为 C++ 标准库的补充,并会对其进行持续更新,本文对其进行简要介绍. 一句话概括,这个库的特点是用 C++ 11 的代码实 ...
- 国际快递查询接口JAVA示例-trackingmore
国际快递查询接口 国际快递查询接口的需求量很大,例如一些跨境电商B2C网站.快递查询APP.快递柜.跨境物流公司等都会需要用到国际快递接口. 目前市面上的快递接口,以国内快递居多,有些虽然号称支持多家 ...
- SpringCloud第六步:搭建分布式配置中心
什么是配置中心 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件.在Spring Cloud中,有分布式配置中心组件spring cloud con ...
- 2018-2019-2 20165236郭金涛《网络对抗》Exp1 PC平台逆向破解
2018-2019-2 20165236郭金涛<网络对抗>Exp1 PC平台逆向破解 一.实验内容 1.掌握NOP, JNE, JE, JMP, CMP汇编指令的机器码(0.5分) 2.掌 ...