溫馨提示×

CASE WHEN語句怎樣處理NULL值

小樊
82
2024-10-10 02:27:39
欄目: 編程語言

在SQL中,CASE WHEN語句可以很好地處理NULL值。當(dāng)你在CASE WHEN語句中涉及NULL值時(shí),它會(huì)根據(jù)你的條件返回NULL,除非你明確指定了返回其他值。

以下是一個(gè)簡單的例子來說明如何處理NULL值:

SELECT 
    id,
    name,
    age,
    CASE 
        WHEN age IS NULL THEN 'Unknown'
        ELSE age
    END as age_description
FROM 
    people;

在這個(gè)例子中,我們有一個(gè)people表,其中有一些人的年齡是NULL。我們使用CASE WHEN語句來為這些NULL年齡生成一個(gè)描述(‘Unknown’)。

注意,在CASE WHEN語句中,NULL值被視為假值。所以,只有當(dāng)條件明確返回NULL時(shí),結(jié)果才會(huì)是NULL。例如:

SELECT 
    id,
    name,
    age,
    CASE 
        WHEN age = 25 THEN 'Young'
        WHEN age = 35 THEN 'Middle-aged'
        ELSE 'Old'
    END as age_group
FROM 
    people;

在這個(gè)例子中,如果某人的年齡是NULL,那么age_group列的值也將是NULL,因?yàn)镹ULL不等于25,也不等于35。

總的來說,CASE WHEN語句可以方便地處理NULL值,你可以根據(jù)需要在語句中明確指定如何處理這些NULL值。

0