Docs Menu
Docs Home
/ /

Índices compuestos

Los índices compuestos son índices que contienen referencias a varios campos dentro de los documentos de una colección. Estos índices mejoran el rendimiento de queries y ordenamientos con múltiples campos.

Para crear un índice compuesto, llame al método create_index() método y especificar un documento que contenga la siguiente información:

  • Campos sobre los que crear el índice.

  • Orden de clasificación de los valores indexados. Utilice ``1`` para orden ascendente o -1 para orden descendente.

Los ejemplos de esta guía usan la colección movies en la base de datos sample_mflix de la conjuntos de datos de muestra de Atlas. Para acceder a esta colección desde su aplicación C++, instancie un mongocxx::client que se conecte a un clúster de Atlas y asigne los siguientes valores a sus variables db y collection:

auto db = client["sample_mflix"];
auto collection = db["movies"];

Para aprender cómo crear un clúster gratuito de MongoDB Atlas y cargar los conjuntos de datos de ejemplo, consulta la guía MongoDB Get Started.

El siguiente ejemplo crea un índice compuesto ascendente en los campos title y year:

auto index_specification = make_document(kvp("title", 1), kvp("year", 1));
auto result = collection.create_index(index_specification.view());

La siguiente consulta está cubierta por el índice creado en el ejemplo de código anterior:

auto document = collection.find_one(make_document(kvp("title","Peter Pan"), kvp("year", 1924)));
std::cout << bsoncxx::to_json(*document) << std::endl;
{ "_id" :..., "plot" : "Peter Pan enters the nursery of the Darling children...",
..., "year" : 1924, "imdb" : ..., "type", "movie",...}

Para ver ejemplos ejecutables que demuestran cómo administrar los índices, consulte Optimiza las queries con índices.

Para obtener más información sobre los índices, consulte los siguientes recursos en el manual de MongoDB Server:

Para obtener más información sobre los métodos analizados en esta guía, consulte la siguiente documentación de API:

Volver

Índices de un solo campo

En esta página