MySQL中IFNULL函数的使用方法

MySQL中IFNULL函数的使用方法IFNULL 函数是 MySQL 控制流函数之一 它接受两个参数 如果不是 NULL 则返回第一个参数 否则 IFNULL 函数返回第二个参数 两个参数可以是文字值或表达式 一 语法格式 IFNULL expression 1 expression 2 如果 expression 1 不为 NULL 则 IFNULL 函数返回 expression 1 否则返回 expression 2 的结果 如

IFNULL函数是MySQL控制流函数之一,它接受两个参数,如果不是NULL,则返回第一个参数。 否则,IFNULL函数返回第二个参数。

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

一、语法格式

IFNULL(expression_1,expression_2);

如果expression_1不为NULL,则IFNULL函数返回expression_1; 否则返回expression_2的结果。

如果要返回基于TRUE或FALSE条件的值,而不是NULL,则应使用IF函数。

二、简单示例

SELECT IFNULL(1,2);       — returns 1

SELECT IFNULL(”,2);        — returns ”(空字符串也是有值)

SELECT IFNULL(0,2);       — returns 0(0也是有值)

SELECT IFNULL(NULL,’暂无数据’); — returns ‘暂无数据’

三、应用场景

当两个表关联查询时,如果A表为主表,B表为关联表,且B表无数据时,如果为null的话我们可以换个文案显示。

INSERT INTO student(nick, class_id) VALUES (‘xiaoming’, 1),(‘xiaohong’, 2),(‘xiaogang’, 0)

B表是班级表

INSERT INTO class(name) VALUES (‘一班’),(‘二班’),(‘三班’)

当我们关联查询时,已经分过班级的学生显示班级,暂无班级的学生显示暂无班级,这种业务场景下就要使用if null条件

例:SELECT s.id as ‘学生id’,s.nick as ‘学生昵称’,IFNULL(c.name,’暂无班级’) as ‘班级’ FROM student s LEFT JOIN class c on s.class_id = c.id

查询结果为:

学生id   学生昵称   学生班级

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/206877.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午3:17
下一篇 2026年3月19日 下午3:18


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号