6
是否需要在CASE
表達式中包含ELSE
子句?在case表達式中是否需要else子句?
例如,如果我想拉動物是貓而不是其他的名字,我可以用這個SELECT
聲明:
SELECT DISTINCT(CASE WHEN animal_type = 'cat' THEN animal_name END) AS cat_names
我知道我可以只把animal_type = 'cat'
我WHERE
條款,然後
SELECT DISTINCT cat_names,
但我想知道答案。
'CASE'是*表達式*,而不是*語句*。值得注意的是,因爲人們經常把它誤認爲某種形式的流程控制語句,而不是一個計算價值的表達式。 – 2014-09-19 14:49:42
@Damien_The_Unbeliever該術語可能起源於ORACLE,其中CASE * *是一個聲明:https://docs.oracle.com/cd/B19306_01/appdev.102/b14261/case_statement.htm – TylerH 2017-09-28 19:26:52