Access SQLにおけるCASE文とは、条件に応じて異なる結果を返すための制御構文です。
この記事では、Access SQLにおけるCASE文の使い方と、実際の例を交えて解説します。
CASE文とは
CASE文は、条件分岐を行うための制御構文であり、次のように記述します。
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN condition3 THEN result3
...
ELSE result
END
ここで、condition1からcondition3までは、条件式であり、result1からresult3までは、条件が真である場合に返す値です。ELSE節は、どの条件にも当てはまらない場合に返される値を指定します。
CASE文の使用例
例えば、従業員の評価を次のようなルールで決定する場合を考えてみます。
- 売上が 500 万円以上であれば「A」
- 売上が 300 万円以上であれば「B」
- 売上が 100 万円以上であれば「C」
- 売上が 100 万円未満であれば「D」
この場合、次のようなSQL文を記述することができます。
SELECT employee_name, sales,
CASE
WHEN sales >= 5000000 THEN 'A'
WHEN sales >= 3000000 THEN 'B'
WHEN sales >= 1000000 THEN 'C'
ELSE 'D'
END AS rating
FROM employee_table;
このSQL文によって、従業員名と売上とともに、評価を計算した結果が返されます。
ACCESS SQL CASE文のまとめ
ここでは、Access SQLのCASE文について概要を説明しました。
CASE文は、条件式を評価して、それに基づいて処理を分岐するために使用されます。
CASE文は、複雑な条件分岐を行うことができ、複数の条件に基づいて処理を実行することができます。Access SQLでは、IIF関数を使用して単純な条件分岐を行うことができますが、CASE文を使用することで、より複雑な条件分岐を行うことができます。
CASE文は、次のような構文で記述されます。
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE default_result
END
ここで、condition1~conditionNは条件式であり、評価されます。それに応じて、result1~resultNのいずれかが返されます。もし、全ての条件に一致しない場合は、default_resultが返されます。
また、CASE文は、単純な条件式だけでなく、複雑な条件式を含むこともできます。例えば、以下のように、AND、OR、NOTを組み合わせた条件式を指定することができます。
CASE
WHEN condition1 AND condition2 THEN result1
WHEN condition3 OR condition4 THEN result2
...
ELSE default_result
END
Access SQLのCASE文を使用することで、複雑な条件分岐を行うことができ、データの加工や集計などの処理を行う際に役立ちます。

コメント