Sobes.tech
Junior — Middle

Aké metódy vytvárania indexov umožňujú zrýchlenie vyhľadávania vo dvoch poliach v tabuľke databázy?

sobes.tech AI

Odpoveď od AI

Na zrýchlenie vyhľadávania podľa dvoch polí v tabuľke databázy sa zvyčajne používajú zložené (kompozitné) indexy. Tieto sa vytvárajú na základe viacerých stĺpcov a umožňujú efektívne vykonávanie dopytov s podmienkami na tieto polia.

Hlavné metódy:

  • Zložený index (Composite Index): index sa vytvára súčasne na dvoch poliach. Napríklad v SQL:

    CREATE INDEX idx_field1_field2 ON table_name(field1, field2);
    

    Tento index zrýchli dopyty s filtrovaním na obe polia alebo na prvé pole.

  • Samostatné indexy pre každé pole: vytvoria sa dva samostatné indexy, ale pri dopytoch s podmienkami na obe polia môže optimalizátor použiť len jeden alebo zlúčiť výsledky (merge), čo je zvyčajne menej efektívne.

  • Indexy s vloženými stĺpcami (Covering Indexes): v niektorých systémoch správy databáz je možné pridať ďalšie stĺpce do indexu, aby úplne pokryl dopyt bez prístupu k tabuľke.

Príklad vytvorenia zloženého indexu v PostgreSQL:

CREATE INDEX idx_user_email ON users (last_name, first_name);

Toto umožní rýchle vyhľadávanie používateľov podľa priezviska a mena súčasne.