Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ทำให้การสืบค้นข้อมูลช้าอย่างรวดเร็วโดยใช้ดัชนีคอมโพสิตใน MySQL


ก่อนอื่นเรามาดูว่าดัชนีคอมโพสิตคืออะไร -

  • ดัชนีผสมคือดัชนีที่ใช้กับหลายคอลัมน์

  • เรียกอีกอย่างว่าดัชนีแบบหลายคอลัมน์

  • MySQL อนุญาตให้ผู้ใช้สร้างดัชนีผสมซึ่งสามารถประกอบด้วยได้ถึง 16 คอลัมน์

  • เครื่องมือเพิ่มประสิทธิภาพการสืบค้นใช้ดัชนีผสมสำหรับการสืบค้นซึ่งจะทดสอบคอลัมน์ทั้งหมดในดัชนี

  • นอกจากนี้ยังสามารถใช้สำหรับการค้นหาซึ่งจะทดสอบคอลัมน์แรก สองคอลัมน์แรก และอื่นๆ

  • หากระบุคอลัมน์ในลำดับที่ถูกต้องในข้อกำหนดของดัชนี คุณสามารถใช้ดัชนีแบบผสมเดียวที่จะช่วยเพิ่มความเร็วของคิวรีบางประเภทในตารางเดียวกันได้

ให้เราดูวิธีการสร้างดัชนีคอมโพสิตในระหว่างการสร้างตาราง สามารถทำได้โดยใช้คำสั่งด้านล่าง −

สอบถาม

CREATE TABLE table_name (
   c1 data_type PRIMARY KEY,
   c2 data_type,
   c3 data_type,
   c4 data_type,
   INDEX index_name (c2,c3,c4)
);

ในข้อความกล่าวข้างต้น ดัชนีประกอบประกอบด้วยสามคอลัมน์ c2, c3 และ c4

ดัชนีคอมโพสิตสามารถเพิ่มลงในตารางที่มีอยู่ได้โดยใช้คำสั่ง 'CREATE INDEX' มาดูกันว่าจะทำได้อย่างไร -

สอบถาม

CREATE INDEX index_name
ON table_name(c2,c3,c4);

ให้เราดูว่าการสืบค้น sloq สามารถทำได้อย่างรวดเร็วโดยใช้ดัชนีคอมโพสิต -

  • ความเร็วของการดำเนินการค้นหาขึ้นอยู่กับระยะเวลา

  • การใช้คำแนะนำดัชนีจะช่วยเพิ่มความเร็วในการค้นหา

  • เครื่องมือเพิ่มประสิทธิภาพ MySQL สามารถใช้ในการตัดสินใจที่ถูกต้องในขณะที่เลือกดัชนี

  • แต่ควรทำเฉพาะกับข้อความค้นหาแบบคงที่เท่านั้น

  • หากมีการเพิ่มข้อความค้นหาโดยที่ส่วนคำสั่ง 'WHERE' เปลี่ยนแปลง ประสิทธิภาพของการสืบค้นข้อมูลจะแย่ลง เนื่องจากจะไม่ยอมให้เครื่องมือเพิ่มประสิทธิภาพทำงาน

  • คำสั่ง 'FORCE INDEX' จะทำหน้าที่เหมือนกับ 'USE INDEX (index_list) นอกจากนี้ การสแกนตารางถือเป็นงานที่มีราคาแพง

  • จำเป็นต้องสแกนตารางก็ต่อเมื่อไม่มีวิธีใช้ดัชนีที่มีชื่อเพื่อค้นหาแถวในตาราง