Overview
マルチキー インデックスは、配列値のあるフィールドに対するクエリのパフォーマンスを向上させるインデックスです。 MongoDB\Collection::createIndex()メソッドと、単一フィールドまたは複合インデックスの作成に使用するのと同じ構文を使用して、コレクションにマルチキーインデックスを作成できます。
サンプル データ
このガイドの例では、Atlas サンプルデータセットの sample_mflix データベースの movies コレクションを使用します。無料の MongoDB 配置を作成し、サンプルデータセットを読み込む方法については、MongoDB の スタートガイドを参照してください。
マルチキー インデックスの作成
マルチキーインデックスを作成するには、 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 ドキュメント
このガイドで説明されているメソッドの詳細については、次の API ドキュメントを参照してください。