OSDN Git Service

Add document description about controlling joining directions.
authorKyotaro Horiguchi <horiguchi.kyotaro@lab.ntt.co.jp>
Thu, 18 Dec 2014 07:40:22 +0000 (16:40 +0900)
committerKyotaro Horiguchi <horiguchi.kyotaro@lab.ntt.co.jp>
Fri, 19 Dec 2014 06:54:01 +0000 (15:54 +0900)
This feature was introduced far ago at
eb3c095a7247df5cacc28687900aa30e7969aeda, but document does not
mention about it so far. So added the description about the feature.

doc/pg_hint_plan-ja.html

index 7660480..d78d7eb 100755 (executable)
@@ -256,6 +256,12 @@ postgres-#  ORDER BY a.aid;
 <p>あるオブジェクトの組み合わせでどのような順番で結合するかを指定できるヒント句のグループです。「Leading」のみを含みます。</p>
 <p>結合順序を指定できるオブジェクトは結合方式と同じです。</p>
 <p>先に結合して欲しいオブジェクトから順にオブジェクト名または別名を指定します。同じ問合せブロックのオブジェクトに対して複数の結合順序のヒント句を指定した場合は、最後に指定したヒント句が適用されます。 </p>
+<p>通常の記述を行った場合には結合の個々の段の結合方向はPostgreSQLのプランナによって決定されます。しかし以下の例のように2つのオブジェクトの組を丸括弧で囲うことで各段の結合方向を指定することができるようになります。
+<pre>
+Leading((t5 (t1 t2)))
+</pre>
+は、t1とt2の結合をt1を駆動表として結合し、さらにそれとt5をt5を駆動表として結合します。
+</p>
 <div class="tips">
 <span class="strong"></span>
 <p>結合対象のテーブルが3つ以上ある場合、結合方式のヒント句を指定したとしてもコスト見積もりによっては対象のテーブルが直接結合されないことがあります。対象のテーブルが直接結合されない場合は、結合順序のヒント句を併せて指定します。</p>