ホームページ >データベース >mysql チュートリアル >ODBC 経由の MS アクセス クエリにおける CASE WHEN の制限を回避するにはどうすればよいですか?

ODBC 経由の MS アクセス クエリにおける CASE WHEN の制限を回避するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-04 08:03:34906ブラウズ

How Can I Work Around CASE WHEN Limitations in MS Access Queries via ODBC?

ODBC を介して MS Access で CASE WHEN 句を使用する

ODBC を使用して Microsoft Access データベースに接続する場合は、制限事項を理解することが重要です

CASE WHEN 句は一般的に使用されますが、他のデータベースでは条件付きで新しい列を計算しますが、MS Access はそれを完全にはサポートしていません。 CASE WHEN 句を含むクエリで ODBC 接続が使用されている場合、これにより例外が発生する可能性があります。

MS Access の場合、代わりに switch() 関数を使用することが回避策です。この関数を使用すると、指定された条件に基づいて複数の戻り値から選択できます。 switch() 関数を使用するには、各条件を括弧で囲み、その後に目的の戻り値をカンマで区切って入力します。最後のパラメータはデフォルトの戻り値である必要があります。

次に例を示します:

SELECT switch(
  age > 40, 4,
  age > 25, 3,
  age > 20, 2,
  age > 10, 1,
  true, 0
) FROM demo

この例では、switch() 関数は age 列を評価し、年齢列に基づいて対応する値を返します。条件。どの条件も満たされない場合は、デフォルト値 (0) が返されます。

どの条件も一致しない場合に null 値を防ぐために、デフォルトの戻り値が必要であることに注意してください。

以上がODBC 経由の MS アクセス クエリにおける CASE WHEN の制限を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。