Definición
cursor.returnKey()Importante
Método mongosh
Esta página documenta un método.
mongoshEsta no es la documentación de un controlador específico de un lenguaje, como Node.js.Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.
Tip
$metaadmite la palabra clave"indexKey"para devolver metadatos de clave de índice si se utiliza un índice. Se prefiere el uso de{ $meta: "indexKey" }cursor.returnKey()sobre.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 está asociado con un conjunto de resultados modificado. Esto permite encadenar modificadores de cursor
returnKey()adicionales.
Compatibilidad
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 la compatibilidad de Atlas con 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.
Comportamiento
Si la query no utiliza un índice para realizar la operación de lectura, el cursor devuelve documentos vacíos.
Ejemplo
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 para devolver únicamente los campos indexados utilizados para ejecutar la cursor.returnKey() consulta:
var csr = db.restaurant.find( { "cuisine" : "Japanese" } ) csr.returnKey()
Esto devuelve lo siguiente:
{ "cuisine" : "Japanese" } { "cuisine" : "Japanese" } { "cuisine" : "Japanese" } { "cuisine" : "Japanese" } ...