INDEX (INDEX)
اینجا «ایندکس (Index)» را یاد می گیری. ایندکس مثل فهرست کتاب است. با آن، جست وجو سریع تر انجام می شود. داده تغییر کند، ایندکس هم باید به روز شود.
ایندکس چیست؟
«ایندکس» ساختاری برای سرعت دادن به کوئری هاست. کاربران آن را نمی بینند. فقط موتور پایگاه داده از آن استفاده می کند. همیشه روی ستون های پرتکرار بساز.
ساخت ایندکس (CREATE INDEX)
با CREATE INDEX روی یک ستون ایندکس بساز. مقادیر تکراری مجاز است.
CREATE INDEX idx_lastname
ON Persons (LastName);
می توانی ایندکس ترکیبی بسازی. ترتیب ستون ها مهم است.
CREATE INDEX idx_pname
ON Persons (LastName, FirstName);
نکته: سینتکس در دیتابیس ها کمی متفاوت است. راهنمای همان سیستم را چک کن.
هشدار: INSERT/UPDATE با ایندکس کندتر می شود. چون ایندکس باید به روز شود.
حذف ایندکس (DROP INDEX)
با DROP INDEX ایندکس را پاک کن. در هر سیستم، سینتکس فرق دارد.
MS Access
DROP INDEX index_name ON table_name;
SQL Server
DROP INDEX table_name.index_name;
DB2 / Oracle
DROP INDEX index_name;
MySQL
ALTER TABLE table_name
DROP INDEX index_name;
گام های عملی ساخت ایندکس
- ستون پرتکرار را شناسایی کن.
- بار نوشتن را ارزیابی کن.
- CREATE INDEX را اجرا کن.
- کوئری ها را پروفایل کن.
- ایندکس های بی اثر را حذف کن.
پیوندهای مرتبط
برای فیلتر اعضا، IN را ببین. همچنین شرط ها با WHERE و مرتب سازی با ORDER BY مفید است.
جمع بندی سریع
- ایندکس جست وجو را سریع می کند.
- نوشتن با ایندکس کندتر می شود.
- ستون پرتکرار را ایندکس کن.
- سینتکس حذف در سیستم ها فرق دارد.