複数の CTE を 1 つの SQL クエリに統合する
SQL クエリの領域で、複数の共通テーブル式 (CTE) を 1 つの SQL クエリに結合することクエリは効果的なデータ操作手法となり得ます。これにより、複雑なデータ変換と中間結果を効率的に管理できます。
CTE の結合
複数の CTE をクエリに組み込むには、WITH キーワードで始めて、その後にそれぞれの CTE を続けます。 CTE 定義。カンマで区切られます。再帰共通テーブル式 (rCTE) は、RECURSIVE キーワードを使用して明示的に指定する必要があります。次に例を示します。
WITH RECURSIVE cte1 AS (SELECT * FROM table1), cte2 AS (SELECT * FROM cte1), cte3 AS (SELECT * FROM table2) SELECT * FROM cte3;
この例では、cte1 は非再帰 CTE、cte2 は cte1 に基づく再帰 CTE、cte3 は table2 のデータを使用する非再帰 CTE です。
再帰的と非再帰的CTE
RECURSIVE キーワードは、非再帰 CTE の場合はオプションです。 RECURSIVE を指定すると、rCTE がその定義内で自身を参照できるようになります。ただし、rCTE は後で定義された CTE を参照できるため、クエリ内の CTE の順序は無関係になります。
複数の CTE を使用する利点
単一のクエリでの CTE の結合いくつかのを提供します利点:
以上が複数の共通テーブル式 (CTE) を単一の SQL クエリで効率的に組み合わせるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。