MySQL的IFNULL()、ISNULL()、NULLIF()函数用法说明

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL的IFNULL()、ISNULL()、NULLIF()函数用法说明

一、IFNULL() 函数

MySQL IFNULL 函数是 MySQL 控制流函数之一。

它有两个参数,第一个参数不为 NULL 时返回。 否则,IFNULL 函数返回第二个参数。

这两个参数可以是文字值或表达式。

IFNULL(expression1,expression2);

如果 expression1 不为 NULL,则 IFNULL 函数返回 expression1,否则返回 expression2

二、ISNULL() 函数

MySQL ISNULL() 函数用于检查表达式是否为 NULL

如果传递的表达式为 NULL,则此函数返回 1,否则返回 0。

ISNULL() 函数接受表达式作为参数,并根据传递的参数返回一个整数值 0 或 1。

ISNULL(expression);

三、NULLIF() 函数

MySQL NULLIF() 函数用于比较两个表达式

如果两个表达式相等,NULLIF() 函数返回 NULL,否则返回第一个表达式。

NULLIF() 函数接受表达式作为参数,如果它们相等则返回 NULL。

NULLIF(expression1, expression2)

如果传递的两个表达式相等,则 MySQL NULLIF() 函数返回 NULL,否则如果两个表达式不相等,则返回第一个表达式。

四、总结

IFNULL()、ISNULL()、NULLIF()函数都是用来对值或者表达式进行判断的,区别在于返回值,需要我们根据实际业务使用对应的函数。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
12天前
|
JSON 关系型数据库 MySQL
✅MySQL用了函数到底会不会导致索引失效
MySQL 8.0 引入了函数索引,打破了传统观念,允许在索引中使用函数,提升查询性能。通过创建基于表达式的索引,如 `CONCAT`、`SUBSTRING_INDEX`、`YEAR`、`MONTH` 等,可以优化涉及这些函数的查询。虽然提高了某些查询速度,但也会增加数据维护成本。应谨慎使用,确保表达式确定且适用于常见查询模式。示例包括基于字符串、日期、数学运算和JSON属性的索引。
✅MySQL用了函数到底会不会导致索引失效
|
3天前
|
关系型数据库 MySQL
mysql使用 CONCAT(字段,字段) 函数拼接
mysql使用 CONCAT(字段,字段) 函数拼接
|
19天前
|
JSON 关系型数据库 MySQL
MySQL常用函数解读:从基础到进阶的全方位指南
MySQL常用函数解读:从基础到进阶的全方位指南
|
26天前
|
关系型数据库 MySQL 开发者
Mysql COUNT() 函数详解
【6月更文挑战第19天】Mysql COUNT() 函数详解,包括 COUNT() 的用法及 COUNT() 带条件查询的操作
|
27天前
|
SQL 关系型数据库 MySQL
MySQL数据库基础第二篇(函数)
MySQL数据库基础第二篇(函数)
|
27天前
|
关系型数据库 MySQL
【随手记】MySQL中ROW_NUMBER()、RANK()和DENSE_RANK()函数的用法
【随手记】MySQL中ROW_NUMBER()、RANK()和DENSE_RANK()函数的用法
23 1
|
28天前
|
关系型数据库 MySQL 数据挖掘
|
1月前
|
存储 SQL 关系型数据库
MySQL存储过程和存储函数的使用
MySQL的存储过程和存储函数在功能和用法上有明显的区别。存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,通过指定名称和参数(如果有)来调用执行,可以返回多个值或结果集,但不直接返回值。而存储函数则是一个有返回值的特殊存储过程,它返回一个值或表对象,可以直接嵌入SQL语句中使用,如SELECT语句中。两者都是为了提高SQL代码的重用性和性能,但使用场景和方式有所不同。
165 4
|
1月前
|
存储 安全 关系型数据库
MYSQL--存储函数
MYSQL--存储函数
|
19天前
|
SQL 关系型数据库 MySQL
mysql中GROUP_CONCAT函数详解
mysql中GROUP_CONCAT函数详解
18 0