パーティション プライマリ インデックスを定義するためのCASE_Nの使用 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL関数、式、および述部

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/tpt1555966086716.ditamap
dita:ditavalPath
ja-JP/tpt1555966086716.ditaval
dita:id
B035-1145
Product Category
Software
Teradata Vantage

テーブルのプライマリ インデックスまたは結合インデックスは、各AMPに対するそのテーブルのデータまたは結合インデックスの分散および検索を制御します。プライマリ インデックスがpartitionedプライマリ インデックス(PPI)である場合、AMP上のユーザー定義のパーティションに対してデータを割り当てることができます。

テーブルのプライマリ インデックスまたは結合インデックスを定義するには、PRIMARY INDEX句をCREATE TABLEまたはCREATE JOIN INDEXデータ定義文に指定します。パーティション プライマリ インデックスを定義するには、プライマリ インデックスの定義時にPARTITION BY句を組み込みます。

PARTITION BY句には、行のパーティション割り当てを決定する1つ以上のパーティション化式が必要です。CASE_Nを使って、パーティション化列において何らかの値またはNULLをもつ行がいずれかのパーティションに割り当てられるようにパーティション化式を構築することができます。

また、RANGE_Nを使ってパーティション化列を構築することもできます。詳細については、「RANGE_N」を参照してください。

PARTITION BY句がパーティション化式のリストを指定する場合、PPIはmultilevelPPIであり、1つのレベルの各パーティションはリスト内の次のパーティション化式に従ってサブパーティション化されます。有効なSQL式(例外もあり)から成る単一レベルのPPIのパーティション化式とは異なり、マルチレベルPPIのパーティション化式のリスト内の各式は、CASE_N関数またはRANGE_N関数でなければなりません。

CASE_N関数に基づくパーティション式を、ADDまたはDROPすることはできません。CASE_N関数に基づくパーティション式を変更するには、MODIFY PRIMARY INDEXオプションを指定したALTER TABLE文で、PARTITION BY句全体を再定義する必要があります。また、その文を使用するテーブルは空でなければなりません。

詳細については、<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>の「ALTER TABLE」を参照してください。