示例
示例
SELECT COALESCE(SUM(amount), 0) AS total_amount,
SUM(CASE WHEN status = 1 THEN amount ELSE 0 END) AS paid_amount
FROM orders
WHERE user_id = 42;| NULL 输入 | 跳过 NULL 值 |
|---|---|
| 空集 | 返回 NULL,按需 COALESCE |
| 类型 | 整数求和可能溢出,大额用 DECIMAL/BIGINT |
对数值列求和,忽略 NULL;没有任何行或全为 NULL 时返回 NULL,报表场景常用 COALESCE 兜底。
SELECT COALESCE(SUM(amount), 0) AS total_amount,
SUM(CASE WHEN status = 1 THEN amount ELSE 0 END) AS paid_amount
FROM orders
WHERE user_id = 42;| NULL 输入 | 跳过 NULL 值 |
|---|---|
| 空集 | 返回 NULL,按需 COALESCE |
| 类型 | 整数求和可能溢出,大额用 DECIMAL/BIGINT |