- CASEステートメントを使用して条件に基づいてフィルタリングする例:
SELECT column1, column2
FROM table_name
WHERE CASE
WHEN condition1 THEN column1 = value1
WHEN condition2 THEN column2 = value2
ELSE column3 = value3
END;
この例では、条件によって異なる列をフィルタリングしています。条件1が真の場合、column1の値がvalue1と等しい行が選択されます。条件2が真の場合、column2の値がvalue2と等しい行が選択されます。それ以外の場合、column3の値がvalue3と等しい行が選択されます。
- CASEステートメントを使用して条件に基づいて検索条件を生成する例:
SELECT column1, column2
FROM table_name
WHERE column3 = CASE
WHEN condition1 THEN value1
WHEN condition2 THEN value2
ELSE value3
END;
この例では、条件によって異なる検索条件を生成しています。条件1が真の場合、column3の値がvalue1と等しい行が選択されます。条件2が真の場合、column3の値がvalue2と等しい行が選択されます。それ以外の場合、column3の値がvalue3と等しい行が選択されます。
- CASEステートメントを使用して複数の条件を組み合わせる例:
SELECT column1, column2
FROM table_name
WHERE CASE
WHEN condition1 AND condition2 THEN column1 = value1
WHEN condition3 OR condition4 THEN column2 = value2
ELSE column3 = value3
END;
この例では、複数の条件を組み合わせてフィルタリングしています。条件1と条件2が両方真の場合、column1の値がvalue1と等しい行が選択されます。条件3または条件4が真の場合、column2の値がvalue2と等しい行が選択されます。それ以外の場合、column3の値がvalue3と等しい行が選択されます。
これらの例は、OracleのWHERE句でCASEステートメントを使用する方法として一般的なパターンです。必要に応じて、条件と値を適切に置き換えて使用してください。