Learn the "why" behind slow queries and how to fix them in our 2-Part Webinar.
Register now >
Docs Menu
Docs Home
/ /

cursor.returnKey() (método mongosh)

cursor.returnKey()

Importante

Método mongosh

Esta página documenta a mongosh Método. Esta no es la documentación de un controlador específico del lenguaje, como Node.js.

Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.

Tip

$meta soporta la palabra clave "indexKey" para devolver los metadatos de la clave del índice si se usa un índice. Se prefiere el uso de { $meta: "indexKey" } sobre cursor.returnKey().

Modifica el cursor para devolver las claves del índice en lugar de los documentos.

El tiene la siguiente cursor.returnKey() forma:

cursor.returnKey()
Devuelve:El cursor al que returnKey() está unido con un conjunto de resultados modificado. Esto permite que se encadenen modificadores adicionales de cursor.

Este método está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Nota

Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

Si la query no utiliza un índice para realizar la operación de lectura, el cursor devuelve documentos vacíos.

La colección restaurants contiene documentos con el siguiente esquema:

db.restaurants.insertOne(
{
_id: ObjectId("564f3a35b385149fc7e3fab9"),
address: {
building: "2780",
coord: [
-73.98241999999999,
40.579505
],
street: "Stillwell Avenue",
zipcode: "11224"
},
borough: "Brooklyn",
cuisine: "American ",
grades: [
{
date: ISODate("2014-06-10T00:00:00Z"),
grade: "A",
score: 5
},
{
date: ISODate("2013-06-05T00:00:00Z"),
grade: "A",
score: 7
}
],
name: "Riviera Caterer",
restaurant_id: "40356018"
}
)

La colección tiene dos índices además del índice _id por defecto:

{
"v" : 1,
"key" : {
"_id" : 1
},
"name" : "_id_",
"ns" : "guidebook.restaurant"
},
{
"v" : 1,
"key" : {
"cuisine" : 1
},
"name" : "cuisine_1",
"ns" : "guidebook.restaurant"
},
{
"v" : 1,
"key" : {
"_fts" : "text",
"_ftsx" : 1
},
"name" : "name_text",
"ns" : "guidebook.restaurant",
"weights" : {
"name" : 1
},
"default_language" : "english",
"language_override" : "language",
"textIndexVersion" : 3
}

El siguiente código utiliza el método cursor.returnKey() para devolver únicamente los campos indexados utilizados para ejecutar la query:

var csr = db.restaurant.find( { "cuisine" : "Japanese" } )
csr.returnKey()

Esto devuelve lo siguiente:

{ "cuisine" : "Japanese" }
{ "cuisine" : "Japanese" }
{ "cuisine" : "Japanese" }
{ "cuisine" : "Japanese" }
...

Volver

cursor.readPref

En esta página