Sobes.tech
Middle

Co je složený index?

sobes.tech AI

Odpověď od AI

Složený index (nebo také compound index) je index databáze, který je vytvořen na základě hodnot dvou nebo více sloupců jedné tabulky.

Hlavní vlastnosti a výhody:

  • Pokrytí dotazů: Může urychlit dotazy, které filtrují, třídí nebo seskupují data podle kombinace zahrnutých sloupců.
  • Pořadí sloupců: Pořadí sloupců v definici indexu je důležité. Dotazy, které používají pouze první sloupec nebo první několik sloupců ve svém původním pořadí, mohou efektivně využít index (pravidlo levého prefixu).
  • Snížení počtu indexů: Umožňuje nahradit několik jedno-sloupcových indexů jedním složeným indexem.

Příklad vytvoření složeného indexu v MySQL:

CREATE INDEX idx_lastname_firstname
ON employees (last_name, first_name);

V tomto příkladu je index idx_lastname_firstname vytvořen na sloupcích last_name a first_name. Bude efektivně využíván pro dotazy jako:

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

Ale může být méně efektivní pro dotazy, které používají pouze first_name.

Správný návrh složených indexů je klíčový pro výkon databáze.