Junior
Ma'lumotlar bazasida indeks qanday yaratish mumkin?
sobes.tech AI
AIdan javob
Indeks yaratish tizimga (DBMS) bog'liq.
Indeks yaratish uchun umumiy SQL sintaksisi quyidagicha:
CREATE INDEX indeks_nomi
ON jadval_nomi (ustun1, ustun2, ...);
CREATE INDEX: Indeks yaratish uchun kalit so'zlar.indeks_nomi: Siz indeksga beradigan nom. U jadval doirasida unikal bo'lishi kerak.jadval_nomi: Indeks yaratmoqchi bo'lgan jadval nomi.ustun1, ustun2, ...: Indeksga kiritilgan ustunlar ro'yxati. Ustunlar tartibi birikma indekslar uchun muhim.
Mashhur DBMSlar uchun misollar:
| DBMS | Misol |
|---|---|
| PostgreSQL | CREATE INDEX users_email_idx ON users (email); |
| MySQL | CREATE INDEX products_price_category_idx ON products (price, category_id); |
| SQLite | CREATE INDEX orders_date_idx ON orders (order_date); |
| SQL Server | CREATE INDEX payments_user_idx ON payments (user_id); |
Turli indeks turlarini yaratish mumkin, masalan:
- Klasterni indekslar: Jadvaldagi satrlarning fizik tartibini belgilaydi (odatda bitta jadval uchun).
- Klasterni bo'lmagan indekslar: Alohida ma'lumotlar tuzilmasi bo'lib, jadval satrlariga havolalarni saqlaydi.
- Yagona indekslar: Indekslangan ustunlardagi qiymatlarning unikal bo'lishini ta'minlaydi.
Yagona indeks yaratish misoli:
CREATE UNIQUE INDEX users_username_unique_idx
ON users (username);
Bir nechta ustunli birikma indekslar:
CREATE INDEX orders_user_product_idx
ON orders (user_id, product_id);
Indekslarni tanlashda WHERE shartlarida eng ko'p ishlatiladigan ustunlar, JOIN operatsiyalari va ORDER BY shartlariga asoslanish muhim. Juda ko'p indekslar yoki mos kelmaydigan ustunlarga indekslar yaratish yozish, yangilash va o'chirish operatsiyalarining samaradorligini pasaytirishi mumkin.