在 SQL 中,使用 CASE WHEN 语句时,可以通过添加额外的条件来处理空值(NULL)情况。这通常涉及到检查某个字段是否为 NULL,并针对这种情况返回特定的结果。以下是一个处理空值的 CASE WHEN 示例:
SELECT
id,
name,
age,
CASE
WHEN age IS NULL THEN 'Unknown'
ELSE age
END AS age_with_null_handling
FROM
your_table;
在这个示例中,我们首先选择 id、name 和 age 字段。然后,我们使用 CASE WHEN 语句来检查 age 字段是否为 NULL。如果 age 是 NULL,则 CASE WHEN 语句返回 ‘Unknown’;否则,返回 age 的原始值。最后,我们将处理后的 age 字段命名为 age_with_null_handling。
请注意,这个示例假设你的表名为 your_table,你需要将其替换为实际的表名。此外,你可以根据需要调整 CASE WHEN 语句中的条件和返回值。
如果你想要在 CASE WHEN 语句中处理多个可能的空值情况(例如,age 可能是 NULL、空字符串 ‘’ 或其他某种表示无的有效值),你可以使用 IS NULL、IS NOT NULL、=、<> 等操作符来检查这些条件。以下是一个更复杂的示例:
SELECT
id,
name,
age,
CASE
WHEN age IS NULL OR age = '' THEN 'Unknown'
ELSE age
END AS age_with_multiple_null_handling
FROM
your_table;
在这个示例中,我们检查 age 是否为 NULL 或空字符串,并针对这两种情况返回 ‘Unknown’。如果 age 既不是 NULL 也不是空字符串,则返回原始值。