複合
db.people.createIndex({name: 1, age: -1})
這會在多個欄位上建立索引,在本例中為 name
和 age
欄位。它將在 name
中升序並在 age
中降序。
在這種型別的索引中,排序順序是相關的,因為它將確定索引是否可以支援排序操作。複合索引的任何字首都支援反向排序,只要排序是排序中所有鍵的反向排序方向。否則,複合索引的排序需要與索引的順序匹配。
欄位順序也很重要,在這種情況下,索引將首先按 name
排序,並在每個名稱值內,按 age
欄位的值排序。這允許索引由 name
欄位或 name
和 age
上的查詢使用,但不能單獨使用 age
。