单字段索引
单字段索引存储集合中单个字段的信息。默认情况下,所有集合都在_id字段上有索引。您可以通过添加额外的索引来加速重要的查询和操作。_id字段。您可以为任何字段添加单字段索引,包括
顶级文档字段
嵌入文档
嵌入文档内的字段
嵌入文档内的字段
在创建索引时,您需要指定
创建索引的字段。
索引值的排序顺序(升序或降序)。
排序顺序为
1
将值按升序排序。排序顺序为
-1
将值按降序排序。
重要
使用降序单字段索引可能会对索引性能产生负面影响。为了获得最佳性能,仅使用升序单字段索引。
要创建单字段索引,请使用以下原型
db.<collection>.createIndex( { <field>: 1 } )
此图像显示了单个字段的升序索引,score
在此示例中,集合中具有score
字段值的每个文档都按升序添加到索引中。
用例
如果您的应用程序在同一个字段上反复运行查询,您可以在该字段上创建索引以提高性能。例如,您的人力资源部门经常需要通过员工ID查找员工。您可以在员工ID字段上创建索引以提高该查询的性能。
对常用查询字段进行索引可以提高那些查询被覆盖的机会。覆盖查询是可以完全使用索引来满足的查询,无需检查任何文档。这优化了查询性能。
开始使用
要为单个字段创建索引,请参阅以下示例