基本構文
1 2 3 |
WITH ’新たに作成したテーブル名’as (作成したいテーブルを作るクエリ ); |
RECURSIVEを用いたWITH句
この形をとります。
1 2 3 4 5 6 |
WITH RECURSIVE hoge AS ( FROM句にhogeを含まないSELECT文(非再帰項) UNION ALLまたはUNION FROM句にhogeを含むSELECT文(再帰項) ) WITH句を使用したSELECT文 |
FROM句にhogeを含まないSELECT文
非再帰項と呼びます。
FROM句にhogeを含むSELECT文
再帰項
処理の流れ
1 2 3 |
1.「非再帰項」を計算し、結果を作業テーブルと呼ばれる一時的な表に格納する 2.1.の「再帰項」の計算結果を非再帰項のFROM句に代入してSQLの実行結果が空になるまで再度計算します。 3.2.で計算した結果を全てUNIONまたはUNION ALLで足し合わせます。 |
この記事へのコメントはありません。