组合索引
概述
组合索引 在集合文档的多个字段中保存引用,从而提高查询和排序性能。您可以通过使用MongoDB\Collection::createIndex()
方法以及与创建单字段索引相同的语法来在集合上创建组合索引单字段索引.
示例数据
本指南中的示例使用来自 sample_mflix
数据库的 movies
集合。Atlas 示例数据集。要了解如何创建免费的 MongoDB Atlas 集群和加载数据集,请参阅 Atlas 入门指南。
创建组合索引
使用 MongoDB\Collection::createIndex()
方法创建组合索引。以下示例在 title
和 year
字段上创建索引
$indexName = $collection->createIndex( ['title' => 1, 'year' => 1] );
以下是一个查询示例,该查询由前面代码示例中创建的索引覆盖
$document = $collection->findOne( ['title' => ['$regex' => 'Sunrise'], 'year' => ['$gte' => 1990]] ); echo json_encode($document), PHP_EOL;
{"_id":...,"title":"Before Sunrise",...,"year":1995,...}
更多信息
要了解更多关于复合索引的信息,请参阅MongoDB服务器手册中的复合索引。
要查看演示如何管理索引的可执行示例,请参阅通过使用索引优化查询。
API 文档
要了解更多关于本指南中讨论的任何方法,请参阅以下API文档