1、正確 SQL
SELECT
CNTRY_NAME,
CNTRY_CONTINENT AS Continent,
CASE -- 注意:CASE用的字段 是表的真正字段名 CNTRY_CONTINENT(“不是別名 Continent” 哦,親)
WHEN CNTRY_CONTINENT IS NULL THEN 'Continent IS NULL'
ELSE CNTRY_CONTINENT
END AS MARVIN_case_when_then_else_end -- 此列的列名是:MARVIN_case_when_then_else_end
FROM
EI.COUNTRIES;
2、錯誤 SQL
SELECT
CNTRY_NAME,
CNTRY_CONTINENT AS Continent,
CASE -- 注意:CASE中用的字段 是別名 Continent(這樣不對,執行出錯)
WHEN Continent IS NULL THEN 'Continent IS NULL'
ELSE CNTRY_CONTINENT -- 注意:CNTRY_CONTINENT 是表的真正字段名,這是對的(這裏當然 也不能 用 Continent)
END AS MARVIN_case_when_then_else_end
FROM
EI.COUNTRIES;
在貼下 正確 SQL 的執行結果