Docs Menu
Docs Home
/ / /
PHP ライブラリ マニュアル
/

Multikey Indexes

項目一覧

  • Overview
  • サンプル データ
  • マルチキー インデックスの作成
  • 詳細情報
  • API ドキュメント

マルチキー インデックスは、配列値のあるフィールドに対するクエリのパフォーマンスを向上させるインデックスです。 MongoDB\Collection::createIndex()メソッドと、 の単一フィールドまたは複合インデックスの作成に使用するのと同じ構文を使用して、コレクションにマルチキーインデックスを作成できます。

このガイドの例では、 Atlas サンプル データセットsample_mflixデータベースのmoviesコレクションを使用します。 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;

マルチキー インデックスは、クエリ カバレッジ、インデックスバウンド計算、およびソート動作の点で他のインデックスとは動作が異なります。マルチキー インデックスの動作と制限の詳細については、 MongoDB Serverマニュアルの「 マルチキーインデックス」を参照してください。

インデックスを管理する方法を示す実行可能な例については、「 インデックスを使用してクエリを最適化する 」を参照してください。

このガイドで説明されているメソッドの詳細については、次の API ドキュメントを参照してください。

戻る

複合インデックス