Junior — Middle
Este posibil să creați un index compus pe mai multe coloane într-o bază de date?
sobes.tech AI
Răspuns de la AI
Da, în majoritatea sistemelor de gestionare a bazelor de date, este posibil să creați un index compus (composite index) pe mai multe coloane. Acest index accelerează interogările care filtrează sau sortează datele după combinația acestor coloane.
În Go, lucrând cu bazele de date, se folosește de obicei o interogare SQL pentru a crea un index. De exemplu, pentru PostgreSQL:
CREATE INDEX idx_name ON table_name (column1, column2);
Dacă utilizați un ORM sau o bibliotecă pentru a lucra cu bazele de date în Go, precum GORM, crearea unui index compus poate arăta astfel:
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"`
}
// În timpul migrării, GORM va crea un index compus idx_name pe FirstName și LastName
Astfel, un index compus ajută la optimizarea interogărilor care utilizează mai multe coloane în condițiile WHERE sau ORDER BY.