贝利信息

如何替换空值_mysql ifnull函数用法

日期:2026-01-04 00:00 / 作者:P粉602998670
IFNULL(expr1, expr2)用于将NULL值替换为指定默认值:若expr1非NULL则返回其本身,否则返回expr2;仅判断NULL,不处理空字符串、0等假值;需配合NULLIF处理空字符串场景。

MySQL 中用 IFNULL() 函数可以快速把空值(NULL)替换成指定的默认值,语法简单、效率高,是处理缺失数据最常用的方法之一。

IFNULL 基本用法

IFNULL(expr1, expr2) 的意思是:如果 expr1 不为 NULL,就返回它本身;否则返回 expr2

常见使用场景示例

比如有一张用户表 users,其中 phone 字段可能为空:

注意 NULL 和空字符串的区别

IFNULL 不会把空字符串 '' 当作 NULL 处理。如果字段存的是空字符串而非 NULL,需要先用 NULLIF() 转换,再套用 IFNULL

替代方案对比

除了 IFNULL,MySQL 还提供其他类似函数,适用场景略有不同:

日常简单空值替换,IFNULL 最直接高效。