HSQLDB - ดัชนี
ก database indexเป็นโครงสร้างข้อมูลที่ช่วยเพิ่มความเร็วของการดำเนินการในตาราง ดัชนีสามารถสร้างได้โดยใช้คอลัมน์อย่างน้อยหนึ่งคอลัมน์ซึ่งเป็นพื้นฐานสำหรับทั้งการค้นหาแบบสุ่มอย่างรวดเร็วและการจัดลำดับการเข้าถึงระเบียนอย่างมีประสิทธิภาพ
ในขณะที่สร้างดัชนีควรพิจารณาว่าอะไรคือคอลัมน์ที่จะใช้ในการสร้างแบบสอบถาม SQL และสร้างดัชนีอย่างน้อยหนึ่งรายการในคอลัมน์เหล่านั้น
ในทางปฏิบัติดัชนียังเป็นประเภทของตารางซึ่งเก็บคีย์หลักหรือฟิลด์ดัชนีและตัวชี้ไปยังแต่ละระเบียนลงในตารางจริง
ผู้ใช้ไม่สามารถเห็นดัชนี ใช้เพื่อเพิ่มความเร็วในการสืบค้นและจะใช้โดย Database Search Engine เพื่อค้นหาเรกคอร์ดอย่างรวดเร็ว
คำสั่ง INSERT และ UPDATE ใช้เวลาบนตารางที่มีดัชนีมากกว่าในขณะที่คำสั่ง SELECT ทำงานได้เร็วกว่าบนตารางเหล่านั้น เหตุผลในขณะที่แทรกหรืออัปเดตฐานข้อมูลจำเป็นต้องแทรกหรืออัปเดตค่าดัชนีด้วย
ดัชนีที่เรียบง่ายและไม่เหมือนใคร
คุณสามารถสร้างดัชนีเฉพาะบนตาราง กunique indexหมายความว่าสองแถวไม่สามารถมีค่าดัชนีเดียวกันได้ ต่อไปนี้เป็นไวยากรณ์ในการสร้างดัชนีบนตาราง
CREATE UNIQUE INDEX index_name
ON table_name (column1, column2,...);
คุณสามารถใช้คอลัมน์อย่างน้อยหนึ่งคอลัมน์เพื่อสร้างดัชนี ตัวอย่างเช่นสร้างดัชนีบน tutorials_tbl โดยใช้ tutorial_author
CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author)
คุณสามารถสร้างดัชนีอย่างง่ายบนตาราง เพียงแค่ละเว้นคำหลัก UNIQUE จากแบบสอบถามเพื่อสร้างดัชนีอย่างง่าย กsimple index อนุญาตให้มีค่าที่ซ้ำกันในตาราง
หากคุณต้องการจัดทำดัชนีค่าในคอลัมน์โดยเรียงลำดับจากมากไปหาน้อยคุณสามารถเพิ่มคำสงวน DESC หลังชื่อคอลัมน์ได้
CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author DESC)
แก้ไขคำสั่งเพื่อเพิ่มและวาง INDEX
มีคำสั่งสี่ประเภทสำหรับการเพิ่มดัชนีลงในตาราง -
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list) - คำสั่งนี้จะเพิ่ม PRIMARY KEY ซึ่งหมายความว่าค่าที่จัดทำดัชนีจะต้องไม่ซ้ำกันและไม่สามารถเป็น NULL ได้
ALTER TABLE tbl_name ADD UNIQUE index_name (column_list) - คำสั่งนี้สร้างดัชนีที่ค่าต้องไม่ซ้ำกัน (ยกเว้นค่า NULL ซึ่งอาจปรากฏหลายครั้ง)
ALTER TABLE tbl_name ADD INDEX index_name (column_list) - สิ่งนี้จะเพิ่มดัชนีธรรมดาซึ่งค่าใด ๆ อาจปรากฏมากกว่าหนึ่งครั้ง
ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list) - สิ่งนี้สร้างดัชนี FULLTEXT พิเศษที่ใช้สำหรับวัตถุประสงค์ในการค้นหาข้อความ
ต่อไปนี้คือแบบสอบถามเพื่อเพิ่มดัชนีในตารางที่มีอยู่
ALTER TABLE testalter_tbl ADD INDEX (c);
คุณสามารถทิ้ง INDEX ใดก็ได้โดยใช้คำสั่ง DROP พร้อมกับคำสั่ง ALTER ต่อไปนี้เป็นแบบสอบถามเพื่อวางดัชนีที่สร้างไว้ด้านบน
ALTER TABLE testalter_tbl DROP INDEX (c);
การแสดงข้อมูล INDEX
คุณสามารถใช้คำสั่ง SHOW INDEX เพื่อแสดงรายการดัชนีทั้งหมดที่เกี่ยวข้องกับตาราง เอาต์พุตรูปแบบแนวตั้ง (ระบุโดย \ G) มักจะมีประโยชน์กับคำสั่งนี้เพื่อหลีกเลี่ยงการตัดกันแบบเส้นยาว
ต่อไปนี้เป็นไวยากรณ์ทั่วไปเพื่อแสดงข้อมูลดัชนีเกี่ยวกับตาราง
SHOW INDEX FROM table_name\G