Sobes.tech
Middle

Kas yra sudėtinis indeksas?

sobes.tech AI

Atsakymas iš AI

Sujungtas indeksas (arba compound indeksas) yra duomenų bazės indeksas, sukurtas remiantis dviejų ar daugiau stulpelių reikšmėmis vienoje lentelėje.

Pagrindinės savybės ir privalumai:

  • Užklausų aprėptis: Gali pagreitinti užklausas, kurios filtruojančios, rūšiuoja ar grupuoja duomenis pagal įtrauktų stulpelių kombinaciją.
  • Stulpelių tvarka: Indekso apibrėžimo stulpelių tvarka yra svarbi. Užklausos, naudojančios tik pirmąjį stulpelį arba pirmuosius kelis stulpelius jų pirminėje tvarkoje, gali efektyviai naudoti indeksą (kairiojo prefikso taisyklė).
  • Indeksų skaičiaus mažinimas: Leidžia pakeisti kelis vieno stulpelio indeksus vienu sudėtiniu indeksu.

MySQL pavyzdys, kaip sukurti sudėtinius indeksą:

CREATE INDEX idx_lastname_firstname
ON employees (last_name, first_name);

Šiame pavyzdyje indeksas idx_lastname_firstname sukurtas pagal stulpus last_name ir first_name. Jis bus efektyviai naudojamas tokioms užklausoms kaip:

SELECT * FROM employees WHERE last_name = 'Smith' AND first_name = 'John';
SELECT * FROM employees WHERE last_name = 'Smith';

Tačiau gali būti mažiau efektyvus užklausoms, naudojančioms tik first_name.

Tinkamas sudėtinių indeksų projektavimas yra labai svarbus duomenų bazės našumui.