Sobes.tech
Middle

Czym jest indeks złożony?

sobes.tech AI

Odpowiedź od AI

Złożony indeks (lub indeks typu compound) to indeks bazy danych tworzony na podstawie wartości z dwóch lub więcej kolumn tej samej tabeli.

Główne cechy i zalety:

  • Pokrycie zapytań: Może przyspieszyć zapytania filtrujące, sortujące lub grupujące dane według kombinacji zawartych kolumn.
  • Kolejność kolumn: Kolejność kolumn w definicji indeksu ma znaczenie. Zapytania korzystające tylko z pierwszej kolumny lub pierwszych kilku kolumn w ich oryginalnym porządku mogą efektywnie korzystać z indeksu (zasada prefiksu po lewej stronie).
  • Zmniejszenie liczby indeksów: Pozwala zastąpić kilka indeksów jednokolumnowych jednym indeksem złożonym.

Przykład tworzenia indeksu złożonego w MySQL:

CREATE INDEX idx_lastname_firstname
ON employees (last_name, first_name);

W tym przykładzie indeks idx_lastname_firstname jest tworzony na kolumnach last_name i first_name. Będzie efektywnie wykorzystywany dla zapytań typu:

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

Ale może być mniej wydajny dla zapytań korzystających tylko z first_name.

Poprawne projektowanie indeksów złożonych jest kluczowe dla wydajności bazy danych.