ODBCCASE WHEN
は MS Access の条項をサポートしていますか? CASE WHEN
この句をサポートしていない他のデータベースはありますか? ODBC を使用して MS Access に接続しているときに次のクエリを試しましたが、例外が発生しました。
SELECT (CASE WHEN (AGE > 10) THEN 1 ELSE 0 END) FROM demo
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression '(CASE WHEN (AGE > 10) THEN 1 ELSE 0 END)'
ODBC に接続しているときに、ほとんどのデータベースで比較式を使用して新しい「ブール列」を生成 (計算) する一般的な方法を見つけようとしています。実際、MS Access は SELECT 句での比較をサポートしていますが、他のデータベースでは CASE 句が必要です。MS Access の場合、SQL は次のようになります。
SELECT AGE > 10 FROM demo
しかし、他の場合はそうでなければなりません
SELECT (CASE WHEN (AGE > 10) THEN 1 ELSE 0 END) FROM demo