単一フィールド インデックス
Overview
単一フィールドインデックス は、コレクション内のドキュメントの単一フィールドを参照するインデックスです。 これらのインデックスにより、単一フィールドのクエリとソートのパフォーマンスが向上します。 また、一定時間の経過後または指定されたクロック時間にコレクションからドキュメントを自動的に削除する TTL インデックスもサポートしています。
単一フィールドインデックスを作成する場合は、次の詳細を指定する必要があります。
インデックスを作成するフィールド
昇順または降順によるインデックス値のソート順序
注意
デフォルトの _id_
インデックスは、 単一フィールドインデックスの例です。 このインデックスは、新しいコレクションが作成されるときに、 _id
フィールドに自動的に作成されます。
サンプル データ
このガイドの例では、 Atlas サンプル データセットのsample_mflix
データベースのmovies
コレクションを使用します。 MongoDB Atlas クラスターを無料で作成して、サンプル データセットをロードする方法については、 「 Atlas を使い始める 」ガイドを参照してください。
単一フィールド インデックスの作成
単一フィールドインデックスを作成するには、 MongoDB\Collection::createIndex()
メソッドを使用します。 次の例では、 title
フィールドに昇順のインデックスを作成しています。
$indexName = $collection->createIndex(['title' => 1]);
以下は、前のコード例で作成されたインデックスによってカバーされるクエリの例です。
$document = $collection->findOne(['title' => 'Sweethearts']); echo json_encode($document), PHP_EOL;
{"_id":...,"plot":"A musical comedy duo...", "genres":["Musical"],...,"title":"Sweethearts",...}
詳細情報
インデックスの管理方法を示す実行可能な例を見るには、 「インデックスを使用してクエリを最適化する」を参照してください。
単一フィールドインデックスの詳細については、 MongoDB Serverマニュアルの「単一フィールド インデックス」を参照してください。
API ドキュメント
このガイドで説明されているメソッドの詳細については、次の API ドキュメントを参照してください。