Sobes.tech
Middle

Cos'è un indice composito?

sobes.tech AI

Risposta dell'AI

Un indice composto (o indice di tipo compound) è un indice di database creato sulla base dei valori di due o più colonne di una stessa tabella.

Caratteristiche principali e vantaggi:

  • Copertura delle query: Può accelerare le query che filtrano, ordinano o raggruppano i dati in base alla combinazione delle colonne incluse.
  • Ordine delle colonne: L'ordine delle colonne nella definizione dell'indice è importante. Le query che usano solo la prima colonna o le prime colonne nel loro ordine originale possono utilizzare efficacemente l'indice (regola del prefisso più a sinistra).
  • Riduzione del numero di indici: Permette di sostituire più indici monocolonna con un indice composto.

Esempio di creazione di un indice composto in MySQL:

CREATE INDEX idx_lastname_firstname
ON employees (last_name, first_name);

In questo esempio, l'indice idx_lastname_firstname viene creato sulle colonne last_name e first_name. Verrà utilizzato efficacemente per query come:

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

Ma può essere meno efficiente per query che usano solo first_name.

Una corretta progettazione degli indici composti è cruciale per le prestazioni del database.