7.12 SQL - Clustered, Non-Clustered Index
الفرق بين Clustered و Non-Clustered Index في SQL، Index (الفهرس) يُستخدم لتحسين أداء الاستعلامات عبر تسريع عمليات البحث والفرز. يوجد نوعان رئيسيان من الفهارس: Clustered Index (فهرس مُجمّع) Non-Clustered Index (فهرس غير مُجمّع) 📌 ما هو Clustered Index؟ هو الفهرس الذي يُحدد ترتيب البيانات الفعلي في الجدول. يعني أن الصفوف في الجدول مرتبة فعليًا حسب هذا الفهرس. يمكن أن يكون هناك فقط واحد لكل جدول. عادة يتم إنشاؤه تلقائيًا عندما نحدد PRIMARY KEY . CREATE TABLE Customers ( CustomerID int PRIMARY KEY, Name varchar(100), City varchar(100) ); ⬅ في هذا المثال، سيتم إنشاء Clustered Index تلقائيًا على CustomerID . 📌 ما هو Non-Clustered Index؟ هو فهرس منفصل لا يُغير ترتيب البيانات في الجدول، لكنه يحتوي على مؤشرات (Pointers) إلى الصفوف الفعلية. يمكن أن يكون هناك أكثر من واحد لكل جدول. يستخدم عندما تحتاج إلى فهرسة أعمدة متعددة. CREATE NONCLUSTERED INDEX idx_city ON Customers (City); ⬅ هذا ينشئ Non-Clustered Index على عمود C...