الفهرس المركب يجمع أكثر من عمود داخل بنية واحدة، ويكون لترتيب الأعمدة فيه معنى مهم. فالفهرس على (customer_id, status, created_at) يبدأ بتنظيم القيم حسب العميل، ثم الحالة داخل العميل، ثم التاريخ داخل المجموعة الناتجة. لذلك لا يعادل هذا الفهرس ثلاثة فهارس منفصلة على الأعمدة نفسها.
تصف قاعدة البادئة اليسرى الأعمدة المتتابعة التي تبدأ من أول الفهرس. في المثال، تعد customer_id بادئة يسرى، وكذلك الزوج (customer_id, status). أما status وحده فلا يشكل بادئة يسرى، لأن العمود الأول غائب. ترتيب كتابة الشروط في نص الاستعلام لا يغير ترتيب الأعمدة داخل تعريف الفهرس.
مثال
CREATE TABLE orders (
id INT PRIMARY KEY,
customer_id INT,
status VARCHAR(20),
created_at DATETIME,
INDEX idx_customer_status_date
(customer_id, status, created_at)
);
تساعد هذه القاعدة على اختيار فهرس يناسب البحث المتكرر. لكنها ليست وعدًا بخطة تنفيذ محددة، إذ يعتمد القرار النهائي على البيانات والإحصاءات والتحسينات المتاحة. يجب التمييز بين فهم بنية الفهرس والتنبؤ بما سيختاره المحسن فعليًا.
باختصار: تبدأ البادئة اليسرى من أول عمود في الفهرس وتستمر دون تجاوز عمود وسيط.
هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.