Teradata - indeks podstawowy

Indeks podstawowy służy do określania lokalizacji danych w Teradata. Służy do określenia, które AMP ma pobrać wiersz danych. Każda tabela w Teradata musi mieć zdefiniowany indeks podstawowy. Jeśli indeks podstawowy nie jest zdefiniowany, Teradata automatycznie przypisuje indeks podstawowy. Indeks podstawowy zapewnia najszybszy sposób dostępu do danych. Podstawowy może mieć maksymalnie 64 kolumny.

Indeks podstawowy jest definiowany podczas tworzenia tabeli. Istnieją 2 typy indeksów podstawowych.

  • Unikalny indeks podstawowy (UPI)
  • Nieunikalny indeks podstawowy (NUPI)

Unikalny indeks podstawowy (UPI)

Jeśli tabela jest zdefiniowana jako posiadająca UPI, wówczas kolumna uznana za UPI nie powinna mieć żadnych zduplikowanych wartości. Jeśli wstawione zostaną zduplikowane wartości, zostaną odrzucone.

Utwórz unikalny indeks podstawowy

Poniższy przykład tworzy tabelę Salary z kolumną EmployeeNo jako unikalny indeks podstawowy.

CREATE SET TABLE Salary ( 
   EmployeeNo INTEGER, 
   Gross INTEGER,  
   Deduction INTEGER, 
   NetPay INTEGER 
) 
UNIQUE PRIMARY INDEX(EmployeeNo);

Nieunikalny indeks podstawowy (NUPI)

Jeśli tabela jest zdefiniowana jako zawierająca NUPI, wówczas kolumna uznawana za UPI może akceptować zduplikowane wartości.

Utwórz nieunikalny indeks główny

Poniższy przykład tworzy tabelę kont pracowników z kolumną EmployeeNo jako Non Unique Primary Index. Numer pracownika jest zdefiniowany jako nieunikalny indeks podstawowy, ponieważ pracownik może mieć wiele kont w tabeli; jeden do konta wynagrodzeń, a drugi do konta zwrotnego.

CREATE SET TABLE Employee _Accounts ( 
   EmployeeNo INTEGER, 
   employee_bank_account_type BYTEINT. 
   employee_bank_account_number INTEGER, 
   employee_bank_name VARCHAR(30), 
   employee_bank_city VARCHAR(30) 
) 
PRIMARY INDEX(EmployeeNo);