溫馨提示×

SQL casewhen 如何處理空值情況

sql
小樊
94
2024-10-15 16:19:24
欄目: 云計算

在 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、nameage 字段。然后,我們使用 CASE WHEN 語句來檢查 age 字段是否為 NULL。如果 age 是 NULL,則 CASE WHEN 語句返回 ‘Unknown’;否則,返回 age 的原始值。最后,我們將處理后的 age 字段命名為 age_with_null_handling。

請注意,這個示例假設你的表名為 your_table,你需要將其替換為實際的表名。此外,你可以根據(jù)需要調整 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 也不是空字符串,則返回原始值。

0