انتقل إلى محتوى الدرس

Multi Column Composite Indexes إنشاء الفهارس المركبة للأعمدة

تعلّم إنشاء الفهارس المركبة والفريدة وفهارس النص الكامل في MySQL بأسلوب MySQL 8 الحديث مع أمثلة استعلامات SQL وتطبيقات تفاعلية.
1 صفوف تعليمية
MySQL
7 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

في التطبيقات الفعلية، نادراً ما يقتصر شرط البحث WHERE على عمود واحد؛ بل غالباً ما نفلتر الطلبات حسب القسم والحالة وتاريخ الإنشاء معاً. بدلاً من إنشاء ثلاثة فهارس منفصلة، يتيح لك MySQL 8.4 بناء فهرس مركب متعدد الأعمدة (Composite Index) يجمع حتى 16 عموداً داخل شجرة B+Tree واحدة.

كيف يرتب المحرك المفاتيح داخل الفهرس المركب INDEX (department_id, status, hire_date)؟

  • يرتب العقد الورقية أولاً حسب قيمة العمود الأول department_id.
  • عندما تتساوى قيمة department_id لعدة موظفين، يرتبهم داخلياً حسب العمود الثاني status.
  • وعندما تتساوى الحالة أيضاً، يرتبهم حسب العمود الثالث hire_date، تماماً كما يرتب دليل الهاتف الأسماء حسب اللقب ثم الاسم الأول ثم اسم الأب.
مخطط إنشاء الفهارس المركبة والفريدة وفهارس النص الكامل في MySQL
SQL
CREATE INDEX idx_emp_dept_status_hire ON employees (department_id, status, hire_date);