Junior — Middle
Оё имкон дорад, ки индексҳои мураккаб дар чанд сутун дар базаи додаҳо сохта шаванд?
sobes.tech AI
Ҷавоб аз AI
Бале, дар системҳои идоракунии маълумотҳои зиёде имкон дорад, ки индексҳои маҷмӯӣ (composite index) дар чанд сутун эҷод кунанд. Ин индексҳо суръатбахшии дархостҳоро, ки маълумотҳоро бо истифода аз маҷмӯаи ин сутунҳо филтр ё сорт мекунанд, таъмин мекунанд.
Дар Go, ҳангоми кор бо базаҳои маълумот, одатан барои эҷоди индекс, дархости SQL истифода мешавад. Масалан, барои PostgreSQL:
CREATE INDEX idx_name ON table_name (column1, column2);
Агар шумо ORM ё китобхонае барои кор бо базаҳои маълумот дар Go, мисли GORM, истифода баред, эҷоди индексҳои маҷмӯӣ чунин менамояд:
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"`
}
// Дар вақти мигратсия GORM индексии маҷмӯиро, ки idx_name ном дорад, дар FirstName ва LastName эҷод мекунад
Инчунин, индексҳои маҷмӯӣ кӯмак мекунанд, ки дархостҳое, ки чанд сутунро дар шароитҳои WHERE ё ORDER BY истифода мебаранд, беҳтар иҷро шаванд.