文档菜单
文档首页
/ / /
PHP 库手册
/

多键索引

本页内容

  • 概述
  • 示例数据
  • 创建多键索引
  • 附加信息
  • API 文档

多键索引是提高数组值字段查询性能的索引。您可以使用MongoDB\Collection::createIndex()方法以及与创建单字段或组合索引相同的语法在集合上创建多键索引。

本指南中的示例使用来自 sample_mflix 数据库的 movies 集合。Atlas 示例数据集。要了解如何创建免费的 MongoDB Atlas 集群和加载数据集,请参阅 Atlas 入门 指南。

使用 MongoDB\Collection::createIndex() 方法创建多键索引。以下示例在数组值的 cast 字段上创建一个升序索引

$indexName = $collection->createIndex(['cast' => 1]);

以下是一个由前面代码示例中创建的索引覆盖的查询示例

$document = $collection->findOne(
['cast' => ['$in' => ['Aamir Khan', 'Kajol']]]
);
echo json_encode($document), PHP_EOL;
{"_id":...,"title":"Holi",...,"cast":["Ashutosh Gowariker",
"Aamir Khan","Rahul Ranade","Sanjeev Gandhi"],...}

多键索引在查询覆盖、索引边界计算和排序行为方面与其他索引的行为不同。要了解多键索引的行为和限制,请参阅 MongoDB 服务器手册中的 多键索引

要查看演示如何管理索引的可用示例,请参阅 通过使用索引优化查询

要了解更多关于本指南中讨论的任何方法,请参阅以下 API 文档

返回

组合索引