复合

db.people.createIndex({name: 1, age: -1})

这会在多个字段上创建索引,在本例中为 nameage 字段。它将在 name 中升序并在 age 中降序。

在这种类型的索引中,排序顺序是相关的,因为它将确定索引是否可以支持排序操作。复合索引的任何前缀都支持反向排序,只要排序是排序中所有键的反向排序方向。否则,复合索引的排序需要与索引的顺序匹配。

字段顺序也很重要,在这种情况下,索引将首先按 name 排序,并在每个名称值内,按 age 字段的值排序。这允许索引由 name 字段或 nameage 上的查询使用,但不能单独使用 age