CASE
式は値に評価されます。つまり、ある条件に基づいて、一連の結果の1つに評価するために使用されます。
例:
SELECT CASE
WHEN type = 1 THEN 'foo'
WHEN type = 2 THEN 'bar'
ELSE 'baz'
END AS name_for_numeric_type
FROM sometable`
CASE
ステートメントは、ある条件に基づいて、一連のステートメントの1つを実行します。
例:
CASE
WHEN action = 'update' THEN
UPDATE sometable SET column = value WHERE condition;
WHEN action = 'create' THEN
INSERT INTO sometable (column) VALUES (value);
END CASE
それらがどのように類似しているかはわかりますが、ステートメントはそうではありません 値に評価され、それ自体で使用できますが、式は式の一部である必要があります。クエリまたは割り当て。クエリにはステートメントを含めることができないため、クエリでステートメントを使用することはできません。たとえば、クエリ自体はステートメントであるため、何かを評価する必要がある式のみを含めることができます。 SELECT CASE WHEN condition THEN UPDATE table SET something; END CASE
意味がありません。