
ایندکس (Index) در SQL ساختاری است که برای افزایش سرعت جستجو و بازیابی دادهها از جداول پایگاه داده استفاده میشود. آنها با ذخیرهسازی مرتب و سازمانیافته مقادیر ستونهای خاص، امکان دسترسی سریعتر به ردیفها را فراهم میکند، مشابه فهرست یک کتاب.
مزایا:
کاهش زمان اجرای کوئریها، بهبود عملکرد در عملیات SELECT، JOIN و WHERE.
معایب:
افزایش فضای ذخیرهسازی و کند شدن عملیات درج، بهروزرسانی و حذف (INSERT, UPDATE, DELETE) به دلیل نیاز به بهروزرسانی ایندکس.
انواع:
Clustered: ترتیب فیزیکی دادهها در جدول را تعیین میکند (هر جدول حداکثر یک نوع کلاسترد میتواند داشته باشد).
Non-Clustered: ساختاری جداگانه برای اشاره به دادهها ایجاد میکند (میتواند چندین ایندکس غیرکلاسترد داشته باشد).
نحوه ایجاد:
با دستور CREATE INDEX، یک Index در Sql Server ایجاد می شود.
CREATE INDEX idx_column ON table_name(column_name);
مثال:
اگر جدولی با ستون Name داشته باشیم و کوئریهای زیادی روی آن جستجو کنند، ایجاد ایندکس روی Name باعث سریعتر شدن جستجو میشود.
نکته:
ایندکسها باید با دقت انتخاب شوند، زیرا تعداد بیش از حد آنها میتوانند عملکرد را کاهش دهند.


چرا DMV ها همیشه حقیقت Performance را نمیگویند؟

Index Hint در SQL Server میانبر نجاتبخش یا بمب ساعتی در Performance؟

نشانههای تحلیل اشتباه Performance در SQL Server و دیتابیسها

Low Selectivity در SQL Server چرا ایندکس شما وجود دارد اما تصمیمساز نیست؟

Over-Indexing چگونه Performance دیتابیس را بیصدا نابود میکند؟

DBA یا ابزار مسئله واقعی مدیریت SQL Server در سازمانها چیست؟

چکلیست جامع بهینهسازی عملکرد، افزایش سرعت و پایداری SQL Server برای سازمانها

آنچه لاندا در ۲۰۲۵ از SQL Server آموخت


و سپس «افزودن به صفحه اصلی» ضربه بزنید
و سپس «افزودن به صفحه اصلی» ضربه بزنید