28、 COALESCE() 空值处理函数

28、 COALESCE() 空值处理函数

1、COALESCE() 函数

空值处理函数,用于返回参数列表中第一个非 NULL 的值

COALESCE(value1, value2, ..., valueN)
  • 从左到右依次检查每个参数,返回第一个不为 NULL 的值。
  • 如果所有参数都是 NULL,则返回 NULL

如:数据:

namephone
Alice 13800138000
Bob NULL
Carol NULL

场景:用户表中 phone 字段可能为空,查询时希望显示 "未提供" 而不是空白或 NULL

SELECT name,COALESCE(phone, '未提供') AS contact_phone
FROM users;

结果:

namecontact_phone
Alice 13800138000
Bob 未提供
Carol 未提供

解析:

  • 对 Alice:phone = '138...' ≠ NULL → 返回 '138...'
  • 对 Bob/Carol:phone = NULL → 跳过,取第二个参数 '未提供'返回。