17.10 - 追加のテーブルを持つ結合インデックスがクエリーをカバーできるかどうかに関するルール - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1184-171K-JPN
Language
日本語 (日本)

以下のルールは、アクセス計画のインデックスがクエリー参照よりも多くのテーブルを内部結合する場合に最適化ルーチンがそのインデックスを選択するように、結合インデックス定義の基礎となる実テーブルのセットを設計する方法について説明しています。このような結合インデックスをブロード結合インデックスといいます。ブロード結合インデックスの詳細については、結合インデックス定義がクエリーよりも多くのテーブルを参照する際の、結合インデックスによるカバーの制限、<Teradata Vantage™ - データベースの設計、B035-1094>、および<Teradata Vantage™- SQLリクエストおよびトランザクション処理、B035-1142>を参照してください。

クエリーで参照するテーブルの数よりも多くの内部結合テーブルが結合インデックス定義に存在する場合の条件 最適化ルーチン
基礎となる実テーブルで外部キー列とプライマリ キー列の間に追加の結合が作成されない場合 その結合インデックスをクエリー計画に使用することを検討しません

定義内に追加の結合が存在すると、既存の行がクエリー評価から除外されるか、または最適化の際に重複行が生成されるからです。

基礎となる実テーブルで外部キー列とプライマリ キー列の間に追加の結合が作成される場合 その結合インデックスをクエリー計画に使用することを検討します。
以下の条件の両方に適合する場合
  • 追加の外部結合に含まれる内部テーブルの結合列セットが固有である
  • 追加の外部結合に含まれる内部テーブルまたは内部テーブルと外部テーブルの両方のいずれかが、追加のテーブルである