Sobes.tech
Junior — Middle

È possibile creare un indice composito su più colonne in un database?

sobes.tech AI

Risposta dell'AI

Sì, nella maggior parte dei sistemi di gestione di database è possibile creare un indice composito (composite index) su più colonne. Questo indice accelera le query che filtrano o ordinano i dati in base alla combinazione di queste colonne.

In Go, lavorando con i database, si utilizza generalmente una query SQL per creare un indice. Ad esempio, per PostgreSQL:

CREATE INDEX idx_name ON table_name (column1, column2);

Se si utilizza un ORM o una libreria per lavorare con i database in Go, come GORM, la creazione di un indice composito può apparire così:

import (
    "gorm.io/gorm"
)

type User struct {
    ID        uint
    FirstName string `gorm:"index:idx_name,priority:1"`
    LastName  string `gorm:"index:idx_name,priority:2"`
}

// Durante la migrazione, GORM creerà un indice composito idx_name su FirstName e LastName

In questo modo, un indice composito aiuta a ottimizzare le query che utilizzano più colonne nelle condizioni WHERE o ORDER BY.