Teradata-プライマリインデックス
プライマリインデックスは、Teradata内のデータの場所を指定するために使用されます。 どのAMPがデータ行を取得するかを指定するために使用されます。 Teradataの各テーブルには、プライマリインデックスを定義する必要があります。 プライマリインデックスが定義されていない場合、Teradataは自動的にプライマリインデックスを割り当てます。 プライマリインデックスは、データにアクセスする最速の方法を提供します。 プライマリには最大64列を含めることができます。
プライマリインデックスは、テーブルの作成中に定義されます。 プライマリインデックスには2種類あります。
- 一意のプライマリインデックス(UPI)
- 非ユニークプライマリインデックス(NUPI)
一意のプライマリインデックス(UPI)
テーブルにUPIがあると定義されている場合、UPIと見なされる列に重複する値を含めることはできません。 重複する値が挿入された場合、それらは拒否されます。
一意のプライマリインデックスを作成する
次の例では、一意のプライマリインデックスとしてEmployeeNo列を持つSalaryテーブルを作成します。
非ユニークプライマリインデックス(NUPI)
テーブルがNUPIを持つように定義されている場合、UPIと見なされる列は重複値を受け入れることができます。
一意でないプライマリインデックスを作成する
次の例では、非一意のプライマリインデックスとして列EmployeeNoを持つ従業員アカウントテーブルを作成します。 従業員はテーブル内に複数のアカウントを持つことができるため、EmployeeNoは一意でないプライマリインデックスとして定義されます。 1つは給与アカウント用、もう1つは払い戻しアカウント用です。