在 MongoDB 中,復(fù)合索引是一種特殊類(lèi)型的索引,它基于文檔中的多個(gè)字段進(jìn)行排序。創(chuàng)建復(fù)合索引可以提高查詢性能,特別是在處理涉及多個(gè)字段的查詢時(shí)。要?jiǎng)?chuàng)建復(fù)合索引,請(qǐng)使用 createIndex()
方法并提供一個(gè)包含字段名稱的數(shù)組作為參數(shù)。
以下是一個(gè)示例,展示了如何在名為 myCollection
的集合上創(chuàng)建一個(gè)基于字段 field1
和 field2
的復(fù)合索引:
db.myCollection.createIndex({ field1: 1, field2: 1 })
在這個(gè)示例中,1
表示升序排序,如果需要降序排序,可以使用 -1
。你也可以為索引指定一個(gè)名稱,以便在查詢時(shí)引用它:
db.myCollection.createIndex({ field1: 1, field2: 1 }, { name: "my_compound_index" })
這將創(chuàng)建一個(gè)名為 my_compound_index
的復(fù)合索引。請(qǐng)注意,在創(chuàng)建復(fù)合索引時(shí),應(yīng)確保查詢中經(jīng)常使用的字段都包含在索引中,以提高查詢性能。然而,過(guò)多的索引可能會(huì)影響寫(xiě)入性能,因此在創(chuàng)建索引時(shí)需要權(quán)衡利弊。