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-1144-171K-JPN
Language
日本語 (日本)
column_name
行圧縮のために結合インデックスに含める複数列のリストの1つ。この列セットは結合インデックス行の反復部分を示します。これらの列が、2番目の括弧で囲まれた固定列セットとともに、圧縮結合インデックス定義の圧縮部分を形成します。結合インデックスの行圧縮の詳細については、Teradata Vantage™ - SQLデータ定義言語 - 詳細トピック、B035-1184のCREATE JOIN INDEXを参照してください。結合インデックスも圧縮されているため、それに対するパーティション プライマリ インデックスを定義することはできません。列パーティション化された結合インデックスを行圧縮することはできません。
結合インデックスの列に、BLOB、CLOB、LOB UDT、VARIANT-TYPE、ARRAY/VARRAY、Geospatial、JSON、またはDATASETのデータ型を含めることはできません。指定された2つの列の名前が同じ場合は、両方の名前を列の別名を使用して別名を指定する必要があります。<Teradata Vantage™ - SQLの基本、B035-1141>を参照してください。
システム派生列のPARTITIONまたはPARTITION#Lncolumn_nameリストの一部として指定することはできません。nは1から62の整数値です。ただし、PARTITIONまたはPARTITION#L nという名前のユーザー定義列を指定することはできます。
選択リスト内の式で定義された結合インデックスは、基本テーブル列のみを使用して定義された結合インデックスよりカバー範囲が限定されています。ただし、単一テーブル結合インデックスの定義で複合式を定義する場合は、必ず統計を収集してください。これは、最適化ルーチンはその統計を直接使用して、クエリー述部で指定された基本テーブルの式の選択性を評価するからです。詳細については、<Teradata Vantage™ - SQLリクエストおよびトランザクション処理、B035-1142>を参照してください。UDT列または少なくとも1つの列を参照する式(集約関数またはOLAP関数を呼び出す式、UDF式、またはDEFAULT、PARTITIONなどの明示的に禁止された組み込み関数またはキーワードを除く)に基づいた式を作成できます。DEFAULT組み込み関数の詳細については、<Teradata Vantage™ - SQL関数、式、および述部、B035-1145>を参照してください。PARTITIONキーワードの詳細については、<Teradata Vantage™ - SQLデータ操作言語、B035-1146>を参照してください。そのような式には、すべて別名が付けられている必要があります。そうでない場合、Vantageはリクエスト側にエラーを返します。column_nameには、列の別名を使用して別名を指定できます。
ROWID
column_nameの値の1つとしてキーワードROWIDを指定すると、最適化ルーチンは、部分的にカバーしているインデックスを基本テーブルに結合してカバーされていない列にアクセスすることができます。
固定と反復の両方のcolumn_nameグループ列にROWIDを指定することはできません。GROUP BY句でROWIDを参照する場合は、それに列の別名を定義する必要があります。GROUP BY指定の列リスト引数では、リテラルROWIDは無効です。
結合インデックス定義で複数のテーブルを参照する場合、それぞれのROWIDの指定を完全修飾する必要があります。結合インデックス定義の選択リストでROWID列の別名を参照する場合は、結合インデックスに対してセカンダリ インデックスを作成するCREATE INDEXリクエストでもその列別名を参照することができます。ROWIDを指定できる場所は、CREATE JOIN INDEX文の最も外側にある選択リストだけです。集約結合インデックスに行圧縮は指定しないでください。
反復列セットには最大64列まで指定できます。圧縮結合インデックスの列の合計数は128個までなので、反復列セットを指定する場合、そのセットに指定できる列数は64個以下です。結合インデックスの反復列コンポーネントには、任意の数の反復列を格納できます。ただし、固定列セット/反復列セットの1つのペアのサイズの合計は、Vantageの行サイズの制限を超えることができないという物理的な制限があります。ROWIDには、列別名を使用して別名を指定できます。