NULLIF
功能概述
比较两个表达式,若相等则返回 NULL,否则返回第一个表达式的值。常用于避免除零错误或将特定值替换为 NULL。
语法
NULLIF(<expr1>, <expr2>)
参数说明
<expr1>
<expr1>
:第一个表达式,也是相等时被替换为 NULL 的值。
<expr2>
<expr2>
:第二个表达式,用于比较。
两个参数类型必须兼容。
使用示例
-- 相等时返回 NULL
SELECT nullif(1, 1);
-- NULL
-- 不相等时返回第一个参数
SELECT nullif(1, 2);
-- 1
-- 字符串比较
SELECT nullif('a', 'b');
-- a
-- 避免除零:分母为 0 时返回 NULL
SELECT 10 / nullif(0, 0);
-- NULL
相关文档