亲宝软件园·资讯

展开

MySQL该如何判断不为空详析

李长渊哦 人气:0

一、前言

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

总结

加载全部内容

相关教程
猜你喜欢
用户评论