توضیحات
Index روشی است برای افزایش کارایی و بازیابی سریعتر رکوردها. به صورت دیفالت از روش B-tree برای ایندکس گذاری استفاده میشود.
دستور
با دستور زیر میتوان Index تعریف کرد.
1 2 3 | CREATE [UNIQUE] INDEX index_name ON table_name (column1, column2, ... column_n) [ COMPUTE STATISTICS ]; |
UNIQUE: مشخص میکند که ترکیب مقادیر در ستونهای index باید یکتا باشد.
index_name: نامی که به index میدهیم.
table_name: نام جدولی که برای آن index میسازیم.
column1, column2, … column_n: ستونهایی که در index استفاده میشود.
COMPUTE STATISTICS: این گزینه به اوراکل میگوید که در حین ایجاد index آمارهایی را جمع آوری کند.
اوراکل این امکان را فراهم میکند که ساخت index تنها بر روی ستونها محدود نباشد. میتوان بر روی توابع نیز index اعمال کرد.
1 2 3 | CREATE [UNIQUE] INDEX index_name ON table_name (function1, function2, ... function_n) [ COMPUTE STATISTICS ]; |
function1, function2, … function_n: توابعی که در index استفاده میشود.
مثال
مثالهایی از ایجاد index:
1 2 3 4 5 6 7 8 9 10 11 12 | CREATE INDEX supplier_idx ON supplier (supplier_name, city) COMPUTE STATISTICS; CREATE INDEX supplier_idx ON supplier (UPPER(supplier_name)); SELECT supplier_id, supplier_name, UPPER(supplier_name) FROM supplier WHERE UPPER(supplier_name) IS NOT NULL ORDER BY UPPER(supplier_name); |