以下の条件または式は、CASE式では無効とみなされます。
条件または式 | 例 |
---|---|
キーワードCASEの後に条件を指定した場合。 | SELECT CASE a=1 WHEN 1 THEN 1 ELSE 0 END FROM t; |
無効なWHEN式を値形式のCASE式に指定した場合。 | SELECT CASE a WHEN a=1 THEN 1 ELSE 0 END FROM t; |
無効なWHEN条件を検索形式のCASE式に指定した場合。 | SELECT CASE WHEN a THEN 1 ELSE 0 END FROM t; SELECT CASE WHEN NULL THEN 'NULL' END FROM table_1; |
非スカラーのsubqueryが検索形式のCASE式のWHEN条件で指定された場合。 | SELECT CASE WHEN t.a IN (SELECT u.a FROM u) THEN 1 ELSE 0 END FROM t; |
互いに同じではない複数のUDTをCASE式が参照する場合。 | SELECT CASE t.shape.gettype() WHEN 1 THEN NEW circle('18,18,324') WHEN 2 THEN NEW square('20,20,400') END; |