"maktab" ma’lumotlar bazasi uchun yaratilgan har bir jadval uchun bittadan index va view (tasavvur) yarating



Download 0,96 Mb.
bet4/5
Sana28.06.2022
Hajmi0,96 Mb.
#714416
1   2   3   4   5
Bog'liq
4-Lab ishi

BITMAP kalit so'zi: Ushbu indeks va "oddiy" b-daraxt indeksi o'rtasidagi sintaksisdagi yagona farq sintaksisdagi BITMAP so'zidir. U CREATE dan keyin va INDEX dan oldin keladi.

Bu maktab_nomi ustunidagi xodimlar jadvalida yangi bitmap indeksini yaratadi.
Funksiyaga asoslangan indeks - bu funksiya yoki ifoda natijalari bo'yicha yaratiladigan indeks.
Bu b-daraxt indeksidan qanday farq qiladi?
Buning sababi, agar so'rov ushbu ustunda funksiyani bajarsa, ustundagi b-daraxt indeksidan foydalanilmaydi.
Agar funksiyaga asoslangan indeks so'rov foydalanadigan funksiyada yaratilgan bo'lsa, unda indeks optimallashtirishda qo'llanilishi mumkin.
Buni batafsilroq tushuntirib beraman.
Funksiyalar va funksiyaga asoslangan indekslar
Aytaylik, men kafedra o’qtuvchilarining oylik maoshi 10 000 dan ortiq bo'lgan barcha xodimlarni topadigan so'rov yozdim:
SELECT maktab_id,
oylikmaosh,
oylikmaosh /12 AS oylik_maosh
FROM maktab
WHERE oylikmaosh /12>=100;

Oylik maoshni topish uchun yillik maoshni 12 ga bo'ldim.
Aytaylik, menda bu jadvalda indekslar yo'q. Men so'rovni bajara olaman va u ishlaydi, lekin u sekin ishlashi mumkun.
Bu misol uchun, men unda indeks yaratmoqchiman deylik. Men u WHERE bandidagi order_date dan foydalanayotganini ko'raman, shuning uchun men ushbu ustunda b-daraxt indeksini yarataman.
CREATE INDEX idx_mak_oyma
ON maktab(oylikmaosh);

Biz bu yerda yaratilgan indeks larni ko’rishimiz mumkin.
SELECT so'rovini qayta ishga tushirishim mumkin. Ammo bu hali ham sekin bo'ladi. Men yaratgan indeks ishlatilmaydi.

Sintaksis va funksiyaga asoslangan indeksga misol


Funksiyaga asoslangan indeks yaratish uchun INDEX ta'rifi ichidagi funksiyangizdan (yoki ifodadan) foydalaning.
CREATE INDEX index_name
ON table_name(function(column_name));
Bu b-daraxt indeksi bilan bir xil ishlaydi, faqat biz funksiyaga qo'shamiz.
Shunday qilib, bizning misolimiz uchun funksiyaga asoslangan indeks quyidagicha ko'rinishi mumkin:
CREATE INDEX idx_mak_mthsal
ON maktab(oylikmaosh /12);






Yangi indeks yaratildi. Keling, asl so'rovimizni bajaramiz.


SELECT maktab_id, oylikmaosh, oylikmaosh /12 AS oylik_moash
FROM maktab
WHERE oylikmaosh /12>=1000;;
Ushbu so'rov endi biz yaratgan indeksdan foydalanildi:




Download 0,96 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish