Teradata - ดัชนีหลัก

ดัชนีหลักใช้เพื่อระบุตำแหน่งของข้อมูลใน Teradata ใช้เพื่อระบุว่า AMP ใดรับแถวข้อมูล แต่ละตารางใน Teradata จะต้องมีดัชนีหลักที่กำหนดไว้ หากไม่ได้กำหนดดัชนีหลัก Teradata จะกำหนดดัชนีหลักโดยอัตโนมัติ ดัชนีหลักเป็นวิธีที่เร็วที่สุดในการเข้าถึงข้อมูล คอลัมน์หลักอาจมีได้สูงสุด 64 คอลัมน์

ดัชนีหลักถูกกำหนดในขณะที่สร้างตาราง ดัชนีหลักมี 2 ประเภท

  • ดัชนีหลักที่ไม่ซ้ำกัน (UPI)
  • ดัชนีหลักที่ไม่ซ้ำกัน (NUPI)

ดัชนีหลักที่ไม่ซ้ำกัน (UPI)

หากตารางถูกกำหนดให้มี UPI คอลัมน์ที่ถือว่าเป็น UPI ไม่ควรมีค่าที่ซ้ำกัน หากใส่ค่าที่ซ้ำกันค่านั้นจะถูกปฏิเสธ

สร้างดัชนีหลักที่ไม่ซ้ำกัน

ตัวอย่างต่อไปนี้สร้างตารางเงินเดือนที่มีคอลัมน์ EmployeeNo เป็นดัชนีหลักที่ไม่ซ้ำกัน

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

ดัชนีหลักที่ไม่ซ้ำกัน (NUPI)

หากตารางถูกกำหนดให้มี NUPI คอลัมน์ที่ถือว่าเป็น UPI สามารถยอมรับค่าที่ซ้ำกันได้

สร้างดัชนีหลักที่ไม่ซ้ำกัน

ตัวอย่างต่อไปนี้สร้างตารางบัญชีพนักงานที่มีคอลัมน์ EmployeeNo เป็นดัชนีหลักที่ไม่ซ้ำกัน EmployeeNo ถูกกำหนดให้เป็น Non Unique Primary Index เนื่องจากพนักงานสามารถมีหลายบัญชีในตาราง บัญชีหนึ่งสำหรับบัญชีเงินเดือนและอีกบัญชีหนึ่งสำหรับบัญชีการชำระเงินคืน

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);