Oracle での case when の使用法は次のとおりです。 1. WHERE 句で使用される CASE WHEN を使用すると、より複雑なフィルター条件を実装したり、他の条件式をネストしたり、論理演算記号 (AND) を使用したりできます。 、OR、NOT) を使用して条件を結合します; 2. SELECT 列リストで使用される CASE WHEN を使用して、クエリ結果に追加の列を追加できます。条件の結果に基づいてさまざまな値を返し、結果セット内の新しい列として表示できます。
このチュートリアルのオペレーティング システム: Windows 10 システム、Oracle バージョン 19c、Dell G3 コンピューター。
CASE WHEN ステートメントは、Oracle で条件付きロジックを実装するために使用されます。これは、SELECT ステートメントの WHERE 句だけでなく、SELECT ステートメントの列リストでも使用できます。
CASE WHEN ステートメントの基本構文は次のとおりです。
CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ... ELSE result END
上記の構文では、条件の結果に基づいてさまざまな値を返すことができます。まず、各条件を順番に評価し、条件を満たすものが見つかったら、対応する結果を返し、CASE 式を終了します。条件が満たされない場合は、ELSE 句を使用してデフォルトの戻り値を定義できます。
WHERE 句での CASE WHEN の使用法
WHERE 句で CASE WHEN を使用すると、より複雑なフィルタリング条件を実装できます。これを使用して、他の条件式をネストしたり、論理演算子 (AND、OR、NOT) を使用して条件を結合したりできます。
WHERE 句で CASE WHEN を使用する方法を示す例を次に示します。
SELECT column1, column2, ... FROM table WHERE CASE WHEN condition1 THEN true -- 如果条件1满足,返回true WHEN condition2 THEN true -- 如果条件2满足,返回true ELSE false -- 默认返回false END;
この例では、条件の結果に基づいて true または false が返されます。これらの条件は、任意の正当な SQL 式または関数で使用できます。
SELECT 列リストでの CASE WHEN の使用法
SELECT 列リストでは、CASE WHEN を使用してクエリ結果に列を追加できます。条件の結果に基づいてさまざまな値を返し、結果セット内の新しい列として表示できます。
これは、SELECT 列リストで CASE WHEN を使用する方法を示す例です:
SELECT column1, column2, CASE WHEN condition1 THEN result1 -- 如果条件1满足,返回result1 WHEN condition2 THEN result2 -- 如果条件2满足,返回result2 ELSE result -- 默认返回result END AS new_column FROM table;
この例では、条件の結果とこれらの値に基づいて、異なる値が返されます。新しい列として使用され、結果セットには「new_column」が表示されます。これらの条件は、任意の正当な SQL 式または関数で使用できます。
要約すると、CASE WHEN ステートメントは、Oracle で条件付きロジックを実装する柔軟な方法を提供します。これを WHERE 句および SELECT 列リストで使用すると、より複雑なフィルター条件を実装し、クエリ結果に追加の列を追加できます。
以上がOracle では case はどのように使用されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。