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