一、前言
MySQL 中可以使用IFNULL函数判断一个值是否不为空。
MySQL IFNULL 函数是 MySQL 控制流函数之一,它接受两个参数,如果不是 NULL,则返回第一个参数。 否则,IFNULL 函数返回第二个参数。两个参数可以是文字值或表达式。
二、使用步骤
1、函数的语法:
其中:如果 v1 不为 NULL,则 IFNULL 函数返回 v1; 否则返回 v2 的结果。
IFNULL(v1,v2);
2、实例
第一个参数为 NULL:
SELECT IFNULL(NULL, "RUNOOB");
以上实例输出结果为:
RUNOOB
第一个参数不为 NULL:
SELECT IFNULL("Hello", "RUNOOB");
以上实例输出结果为:
Hello
3、查询字段结果为空则返回另一个字段
补充知识:MySQL判断字符串为NULL或者为空字符串
函数名 | 说明 |
---|---|
ISNULL(expr) | 如果expr为null返回值1,否则返回值为0 |
IFNULL(expr1,expr2) | 如果expr1值为null返回expr2的值,否则返回expr1的值 |
NULLIF(expr1,expr2) | 如果expr1==expr2返回值为null,否则返回expr1的值;相当于case when expr1=expr2 then null else expr1 end |
COALESCE | 返回传入的参数中第一个非null的值 |
IF(expr1,expr2,expr3) | 如果expr1的值为true,则返回expr2的值,否则返回expr3的值 |
例:
查找学生姓名不为null的学生信息
SELECT * FROM student WHERE ISNULL(stu_name) <1
SELECT * FROM student WHERE stu_name is not null
查询学生成绩,若score为null则返回0
SELECT IFNULL('score',0) FROM stu_score
SELECT COALESCE('score',0) FROM stu_score
SELECT IF(IFNULL('score',null)=null,0,score) FROM stu_score
SELECT CASE WHEN score is null THEN 0 ELSE score END AS score FROM stu_score
总结
到此这篇关于MySQL该如何判断不为空的文章就介绍到这了,更多相关MySQL判断不为空内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!