以下の条件または式は、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;
|