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),含义是:如果第一个参数不为空,则返回第一个 ...
随机推荐
- Java语言基础之数组
引出数组和数组的定义 为什么要使用数组: 问题一: 声明变量时,每一个单独的变量都要对应一个变量名,但现在要处理一组相同类型的数据时,如要表示班上100个人的年纪,绝不能定义100个变量来表示每一个人 ...
- css学习_css3伸缩布局 flex布局
1.flex布局 案例一: 案例二: 保证不至于缩放得太小或太大 案例三:flex的值不一定要写成几份,可以写成固定值 案例四: 竖着3等分(父容器按照高度3等分) !!案例 -----用fle ...
- 关于Spring事物的面试题
https://blog.csdn.net/h294590501/article/details/80386000 数据库事务和Spring事务是一般面试都会被提到,很多朋友写惯了代码,很少花时间去整 ...
- 初识Restful架构
1.对Rest(Restful)的理解 理解RESTful架构 怎样用通俗的语言解释REST,以及RESTful 维基百科:Representational state transfer 2.Rest ...
- JVM内存模型与垃圾回收
内存模型 1,程序计数器(Program Counter Register):程序计数器是一个比较小的内存区域,用于指示当前线程所执行的字节码执行到了第几行,可以理解为是当前线程的行号指示器.字节码解 ...
- Git最牛最全详解
阅读目录 Git是什么 SVN与Git的最主要的区别 在windows上如何安装Git 如何操作 创建版本库 把文件添加到版本库中 版本回退 理解工作区与暂存 ...
- C# 图片识别
项目需要识别图片上的信息,网上搜索试了Asprise-OCR.Microsoft Office Document Imaging(Office 2007) 组件实现两种方式,后者可以识别中文等其他语言 ...
- 第一次接触Android Studio
生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4390905.html
- Spark 学习笔记
Spark的前世今生 基础语法详解 3.条件控制与循环 4.函数入门 5.函数入门之默认参数 6.函数入门之边长参数 7.函数入门之过程lazy值和异常 8.数组操作之Ar ...
- webpack4.0.1安装问题和webpack.config.js的配置变化
The CLI moved into a separate package: webpack-cli. Please install 'webpack-cli' in addition to webp ...