OPTIONS
翻译或纠错本页面

创建一个复合索引

通过对 collection 中的文档建立对应的小而高效的索引项,索引可以帮助MongoDB快速的处理和匹配查询。MongoDB支持只包含单一键的内容的索引,也支持 复合索引 ,它可以索引多个键的内容。继续往下阅读,可以了解创建一个复合索引的方法和实例。

创建一个复合索引

您可以使用一个类似于如下格式操作来创建 复合索引 :

db.collection.ensureIndex( { a: 1, b: 1, c: 1 } )

在索引明细中键的值描述了这个键的索引类型。例如,值 1 表明这个索引会将它的索引项按照升序排序。值``-1`` 表明索引会按照降序排布索引项。如果希望了解其他索引类型,请参见 索引类型.

例子

如下操作将会在集合 productsitem, category, 和 price 键上创建一个(复合)索引:

db.products.ensureIndex( { item: 1, category: 1, price: 1 } )

注意事项:

如果您的集合中包含大量的数据,且您的应用需要在创建索引的过程中访问数据,请考虑在后台创建索引,如 后台创建 所述。参见 在复制集上创建索引 一节来了解更多关于在复制集上建立索引的信息。

注解

参见 在复制集上创建索引 了解如何在 replica set 上创建或者重建索引。

某些数据库驱动可能会在索引明细中使用 NumberLong(1) 而不是 1 。这对最终的索引没有影响。

参见

参见 创建一个复合索引, 索引教程索引概念 了解更多。