テーブルのプライマリ インデックスまたは結合インデックスは、各AMPに対するそのテーブルのデータまたは結合インデックスの分散およびその検索を制御します。プライマリ インデックスがパーティション プライマリ インデックス(PPI)である場合、AMP上のユーザー定義のパーティションに対してデータを割り当てることができます。
テーブルのプライマリ インデックスまたは結合インデックスを定義するには、PRIMARY INDEX句をCREATE TABLEまたはCREATE JOIN INDEXデータ定義文に指定します。パーティション プライマリ インデックスを定義するには、プライマリ インデックスの定義時にPARTITION BY句を組み込みます。
PARTITION BY句には、行のパーティション割り当てを決定する1つ以上のパーティション化式が必要です。RANGE_Nを使って、パーティション化列において何らかの値またはNULLをもつ行がいずれかのパーティションに割り当てられるようにパーティション化式を構築することができます。
また、CASE_Nを使ってパーティション化式を構築することもできます。 詳細は、CASE_Nを参照してください。
PARTITION BY句がパーティション化式のリストを指定する場合、PPIはマルチレベルPPIであり、1つのレベルの各パーティションはリスト内の次のパーティション化式に従ってサブパーティション化されます。有効なSQL式(例外もあり)から成る単一レベルのPPIのパーティション化式とは異なり、マルチレベルPPIのパーティション化式のリスト内の各式は、CASE_N関数またはRANGE_N関数でなければなりません。