Middle
Quali sono i tipi di indici?
sobes.tech AI
Risposta dell'AI
I tipi di indici dipendono dal contesto di applicazione, solitamente nei database.
Per struttura di memorizzazione:
- B-tree (albero B): Il tipo più comune, usato per la memorizzazione ordinata dei dati e la ricerca rapida di intervalli.
- B+ tree (albero B+): Variante dell’albero B, in cui tutti i dati sono memorizzati nei nodi foglia, ottimizzando la lettura sequenziale.
- Indice Hash: Basato su tabelle hash, efficace per ricerche di corrispondenze esatte, ma non adatto per ricerche di intervalli o ordinamento.
- R-tree: Usato per indicizzare dati multidimensionali, ad esempio coordinate geografiche.
Per scopo:
- Indice di chiave primaria: Creato automaticamente per la chiave primaria, garantisce unicità e funge da identificatore del record.
- Indice secondario: Creato su una o più colonne per accelerare le query, non essendo chiave primaria.
- Indice unico: Garantisce l’unicità dei valori nella colonna indicizzata (o nella combinazione di colonne).
- Indice di testo completo: Usato per ricerche di testo all’interno delle colonne.
- Indice spaziale: Applicato per indicizzare dati spaziali.
Per metodo di creazione:
- Indice cluster: Determina l’ordine fisico di memorizzazione dei dati nella tabella. La tabella può avere solo un indice cluster.
- Indice non cluster: Memorizza puntatori a dati reali, che possono essere disposti in altro ordine.
Esempio di creazione di indici in SQL:
-- Creazione di un indice normale
CREATE INDEX idx_lastname ON Employees (LastName);
-- Creazione di un indice unico
CREATE UNIQUE INDEX idx_employeeid ON Employees (EmployeeID);
-- Creazione di un indice composito
CREATE INDEX idx_name_city ON Customers (FirstName, City);