COALESCE 是 SQL 中的一个函数,用于返回第一个非 NULL 的表达式的值。它通常用于处理可能为 NULL 的数据,并提供一个默认值作为备选。
COALESCE 函数的基本语法如下:
Sql
深色版本
COALESCE(expression1, expression2, ..., expressionN, default_value)
函数会从左到右依次检查各个表达式,返回第一个非 NULL 的表达式的值。如果所有的表达式都为 NULL,则返回 default_value。
示例
假设我们有如下表:
Table Example:
| id | value1 | value2 |
|---|---|---|
| 1 | NULL | 10 |
| 2 | 5 | NULL |
| 3 | NULL | NULL |
如果我们执行以下查询:
Sql
深色版本
SELECT id, COALESCE(value1, value2, 0) AS non_null_value
FROM Example;
结果将是:
| id | non_null_value |
|---|---|
| 1 | 10 |
| 2 | 5 |
| 3 | 0 |
在这里,COALESCE(value1, value2, 0) 会返回 value1 如果它不是 NULL;如果 value1 是 NULL,则返回 value2;如果 value1 和 value2 都是 NULL,则返回 0。