mongodb.admin()
Obtiene un identificador para el admin Base de datos en una fuente de datos MongoDB vinculada. Puede usar esto para ejecutar comandos de administración de MongoDB como
admin.getDBNames().
const mongodb = context.services.get("mongodb-atlas"); const admin = mongodb.admin();
Parámetros
admin(): AdminDatabase
Valor de retorno
El método mongodb.admin() retorna un objeto AdminDatabase. El objeto contiene métodos auxiliares que envuelven un subconjunto de comandos de base de datos MongoDB. Consulte admin.getDBNames().
admin.getDBNames()
Devuelve una lista de nombres de bases de datos en una fuente de datos MongoDB.
Importante
System Functions Only
Este método solo está disponible en funciones del sistema. No puedes llamar este método desde una función que se ejecute en el contexto del usuario de la aplicación.
const mongodb = context.services.get("mongodb-atlas"); const admin = mongodb.admin(); const dbNames = admin.getDBNames();
Parámetros
getDBNames(): string[]
Valor de retorno
El método admin.getDBNames() devuelve un arreglo de strings donde cada elemento es el nombre de una base de datos en la fuente de datos.
mongodb.db()
Obtiene un identificador para una base de datos en una fuente de datos MongoDB enlazada.
const mongodb = context.services.get("mongodb-atlas"); const db = mongodb.db("myDB");
Parámetros
db(name: string): Database
Parameter | Tipo | Descripción |
|---|---|---|
| string | El nombre de la base de datos. |
Valor de retorno
El método mongodb.db() devuelve un objeto Database que le permite acceder a colecciones en la base de datos especificada.
base de datos.getCollectionNames()
Devuelve una lista de nombres de colecciones en la base de datos.
Importante
System Functions Only
Este método solo está disponible en funciones del sistema. No puedes llamar este método desde una función que se ejecute en el contexto del usuario de la aplicación.
const mongodb = context.services.get("mongodb-atlas"); const db = mongodb.db("myDB"); const collectionNames = db.getCollectionNames();
Parámetros
getCollectionNames(): string[]
Valor de retorno
El método database.getCollectionNames() devuelve un arreglo de cadenas donde cada elemento es el nombre de una colección en la base de datos.
base de datos.colección()
Obtiene un identificador para una colección en una fuente de datos MongoDB vinculada desde un database identificador.
const mongodb = context.services.get("mongodb-atlas"); const db = mongodb.db("myDB"); const collection = db.collection("myCollection");
Parámetros
collection(name: string): Collection
Parameter | Tipo | Descripción |
|---|---|---|
| string | El nombre de la colección. |
Valor de retorno
El método database.collection() retorna un objeto de colección que te permite realizar consultas en la colección especificada.
collection.find()
Busca todos los documentos de una colección o vista que coinciden con los filtros de consulta proporcionados. Devuelve un cursor que permite acceder a los documentos coincidentes.
const query = { "reviews.0": { "$exists": true } }; const projection = { "_id": 0 }; return itemsCollection.find(query, projection) .sort({ name: 1 }) .toArray() .then(items => { console.log(`Successfully found ${items.length} documents.`) items.forEach(console.log) return items }) .catch(err => console.error(`Failed to find documents: ${err}`))
Parámetros
find( query?: object, projection?: object, options?: object ): Cursor
Parameter | Tipo | Descripción | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Opcional. Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. | ||||||||||
|
| Opcional. Un documento que especifica qué campos debe incluir u omitir MongoDB en los documentos coincidentes. Para devolver todos los campos en los documentos coincidentes, omita este parámetro o especifique un documento de proyección vacío ( Para devolver campos específicos y el Para omitir campos específicos, especifica los campos en el documento de proyección con un valor de NotaSe puede especificar campos para incluir o campos para excluir, pero no ambos. Por ejemplo, la siguiente proyección es inválida porque incluye simultáneamente el campo The exception to this rule is the | ||||||||||
|
| Un objeto que especifica opciones de configuración adicionales. | ||||||||||
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El método collection.find() devuelve un objeto cursor que apunta a los documentos que coincidan con la query especificada. Puedes manipular y acceder a documentos en el conjunto de resultados de la query con los siguientes métodos de cursor:
Método | Descripción | ||
|---|---|---|---|
| Itera el cursor y devuelve una Promesaque se resuelve en el siguiente documento en el cursor. Si el cursor está agotado, la promesa se resuelve Ejemplo | ||
| Itera el cursor hasta agotarlo y retorna un Promise que se resuelve con un arreglo que contiene todos los documentos iterados. Ejemplo | ||
| Especifica una cantidad de documentos coincidentes que omitir del conjunto de resultados de la query. MongoDB omite documentos del conjunto de resultados en orden clasificado hasta haber pasado el número especificado. Si la query también especifica un límite, los documentos omitidos no cuentan para el umbral del límite. NotaNo puede llamar a este método después de recuperar uno o más documentos utilizando | ||
| Especifica el número máximo de documentos que se incluirán en el conjunto de resultados de la query. Si el conjunto de resultados contiene más documentos que el NotaNo puede llamar a este método después de recuperar uno o más documentos utilizando | ||
| Ordena los documentos en el conjunto de resultados según el filtro NotaNo puede llamar a este método después de recuperar uno o más documentos utilizando EjemploEl siguiente documento de ordenación especifica que los documentos deben ordenarse primero por |
Nota
No puedes retornar un cursor desde una función. En su lugar, evalúe el cursor usando cursor.next() o cursor.toArray() y devuelva el resultado.
collection.findOne()
Busca un solo documento en una colección o vista. Si varios documentos coinciden con la consulta, se devuelve el primer documento coincidente de la colección.
Nota
findOne() no puede usar la ordenación
Como solución alternativa, utiliza find() con los métodos de cursor sort() y next() para devolver un solo documento de una colección ordenada.
collection.find({}).sort({"<Field Name>": 1}).next() .then(result => console.log("Found Document: ", result))
const query = { "quantity": { "$gte": 25 } }; const projection = { "title": 1, "quantity": 1, } return itemsCollection.findOne(query, projection) .then(result => { if(result) { console.log(`Successfully found document: ${result}.`); } else { console.log("No document matches the provided query."); } return result; }) .catch(err => console.error(`Failed to find document: ${err}`));
Parámetros
findOne( query?: object, projection?: object, options?: object ): Promise<object | null>
Parameter | Tipo | Descripción | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Opcional. Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. | ||||||||||
|
| Opcional. Un documento que especifica qué campos debe incluir u omitir MongoDB en los documentos coincidentes. Para devolver todos los campos en los documentos coincidentes, omita este parámetro o especifique un documento de proyección vacío ( Para devolver campos específicos y el Para omitir campos específicos, especifica los campos en el documento de proyección con un valor de NotaSe puede especificar campos para incluir o campos para excluir, pero no ambos. Por ejemplo, la siguiente proyección es inválida porque incluye simultáneamente el campo The exception to this rule is the | ||||||||||
|
| Un objeto que especifica opciones de configuración adicionales. | ||||||||||
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El método collection.findOne() devuelve un Promise que resuelve el primer documento en la colección que coincide con la query. Si ningún documento coincide con la query especificada, la promesa se resuelve en null.
Promise<object | null>
colección.findOneAndUpdate()
Actualiza un solo documento en una colección o vista y devuelve el documento en su forma previa o posterior a la actualización.
A diferencia de, esta acción permite buscar, modificar y devolver un documento de forma automática con el collection.updateOne() mismo comando. Esto evita el riesgo de que otras operaciones de actualización modifiquen el documento entre operaciones de búsqueda y actualización independientes.
// Find the document that describes "lego" const query = { "name": "lego" }; // Set some fields in that document const update = { "$set": { "name": "blocks", "price": 20.99, "category": "toys" } }; // Return the updated document instead of the original document const options = { returnNewDocument: true }; return itemsCollection.findOneAndUpdate(query, update, options) .then(updatedDocument => { if(updatedDocument) { console.log(`Successfully updated document: ${updatedDocument}.`) } else { console.log("No document matches the provided query.") } return updatedDocument }) .catch(err => console.error(`Failed to find and update document: ${err}`))
Parámetros
findOneAndUpdate( query: object, update: object, options?: object ): Promise<object | null>
Parameter | Tipo | Descripción | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. | ||||||||||
|
| Un documento de actualizar que especifica modificaciones para realizar usando MongoDB operadores de actualizar. | ||||||||||
|
| Un objeto que especifica opciones de configuración adicionales. | ||||||||||
|
| Opcional. Por defecto: Un valor booleano que, si | ||||||||||
|
| Opcional. Especifica el orden de clasificación de la consulta. Puedes especificar uno o varios campos para clasificar, donde el valor de cada campo indica si MongoDB debe ordenarlos en orden ascendente ( EjemploEl siguiente documento de ordenación especifica que los documentos deben ordenarse primero por | ||||||||||
|
| Un documento que especifica qué campos debe incluir u omitir MongoDB en los documentos coincidentes. Para devolver todos los campos en los documentos coincidentes, omita este parámetro o especifique un documento de proyección vacío ( Para devolver campos específicos y el Para omitir campos específicos, especifica los campos en el documento de proyección con un valor de NotaSe puede especificar campos para incluir o campos para excluir, pero no ambos. Por ejemplo, la siguiente proyección es inválida porque incluye simultáneamente el campo The exception to this rule is the | ||||||||||
|
| Opcional. Por defecto: Si | ||||||||||
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El collection.findOneAndUpdate() método devuelve una promesa que se resuelve en un solo documento sobrescrito por la consulta. Si ningún documento coincide con la consulta especificada, la promesa se resuelve null en.
Promise<object | null>
Nota
Puedes especificar si deseas devolver la versión previa al reemplazo o la posterior al reemplazo del documento configurando el valor de options.returnNewDocument. Por defecto, returnNewDocument es false, lo que indica que la promesa debe resolverse a la versión antes de la actualización del documento.
collection.findOneAndReplace()
Sobrescribe un solo documento en una colección o vista y devuelve el documento en su forma pre o post reemplazo.
A diferencia de, esta acción permite buscar, modificar y devolver un documento de forma automática con el collection.updateOne() mismo comando. Esto evita el riesgo de que otras operaciones de actualización modifiquen el documento entre operaciones de búsqueda y actualización independientes.
// Find the document that describes "lego" const query = { "name": "lego" }; // Replace it with a new document const replacement = { "name": "blocks", "price": 20.99, "category": "toys" }; // Return the original document as it was before being replaced const options = { "returnNewDocument": false }; return itemsCollection.findOneAndReplace(query, replacement, options) .then(replacedDocument => { if(replacedDocument) { console.log(`Successfully replaced the following document: ${replacedDocument}.`) } else { console.log("No document matches the provided query.") } return updatedDocument }) .catch(err => console.error(`Failed to find and replace document: ${err}`))
Parámetros
findOneAndReplace( query: object, replacement: object, options?: object ): Promise<object | null>
Parameter | Tipo | Descripción | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. | ||||||||||
|
| Un documento que reemplazará al documento correspondiente. El documento de reemplazo no puede contener ningún operador de actualización de MongoDB. | ||||||||||
|
| Un objeto que especifica opciones de configuración adicionales. | ||||||||||
|
| Opcional. Por defecto: Un valor booleano que, si | ||||||||||
|
| Opcional. Especifica el orden de clasificación de la consulta. Puedes especificar uno o varios campos para clasificar, donde el valor de cada campo indica si MongoDB debe ordenarlos en orden ascendente ( EjemploEl siguiente documento de ordenación especifica que los documentos deben ordenarse primero por | ||||||||||
|
| Un documento que especifica qué campos debe incluir u omitir MongoDB en los documentos coincidentes. Para devolver todos los campos en los documentos coincidentes, omita este parámetro o especifique un documento de proyección vacío ( Para devolver campos específicos y el Para omitir campos específicos, especifica los campos en el documento de proyección con un valor de NotaSe puede especificar campos para incluir o campos para excluir, pero no ambos. Por ejemplo, la siguiente proyección es inválida porque incluye simultáneamente el campo The exception to this rule is the | ||||||||||
|
| Opcional. Por defecto: Si | ||||||||||
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El collection.findOneAndReplace() método devuelve una promesa que se resuelve en un solo documento sobrescrito por la consulta. Si ningún documento coincide con la consulta especificada, la promesa se resuelve null en.
Promise<object | null>
Nota
Puedes especificar si deseas devolver la versión previa al reemplazo o la posterior al reemplazo del documento configurando el valor de options.returnNewDocument. Por defecto, returnNewDocument es false, lo que indica que la promesa debe resolverse a la versión antes de la actualización del documento.
colección.findOneAndDelete()
Elimina un solo documento de una colección y devuelve el documento eliminado tal como estaba inmediatamente antes de ser eliminado.
A diferencia de, esta acción permite buscar, modificar y devolver un documento de forma automática con el collection.updateOne() mismo comando. Esto evita el riesgo de que otras operaciones de actualización modifiquen el documento entre operaciones de búsqueda y actualización independientes.
// Find the first document that has a quantity greater than 25 const query = { "quantity": { "$gte": 25 } }; // Sort the documents in order of descending quantity before // deleting the first one. const options = { "sort": { "quantity": -1 } } return itemsCollection.findOneAndDelete(query, options) .then(deletedDocument => { if(deletedDocument) { console.log(`Successfully deleted document that had the form: ${deletedDocument}.`) } else { console.log("No document matches the provided query.") } return deletedDocument }) .catch(err => console.error(`Failed to find and delete document: ${err}`))
Parámetros
findOneAndDelete( query: object, options?: object ): Promise<object | null>
Parameter | Tipo | Descripción | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. | ||||||||||
|
| Un objeto que especifica opciones de configuración adicionales. | ||||||||||
|
| Opcional. Especifica el orden de clasificación de la consulta. Puedes especificar uno o varios campos para clasificar, donde el valor de cada campo indica si MongoDB debe ordenarlos en orden ascendente ( EjemploEl siguiente documento de ordenación especifica que los documentos deben ordenarse primero por | ||||||||||
|
| Un documento que especifica qué campos debe incluir u omitir MongoDB en los documentos coincidentes. Para devolver todos los campos en los documentos coincidentes, omita este parámetro o especifique un documento de proyección vacío ( Para devolver campos específicos y el Para omitir campos específicos, especifica los campos en el documento de proyección con un valor de NotaSe puede especificar campos para incluir o campos para excluir, pero no ambos. Por ejemplo, la siguiente proyección es inválida porque incluye simultáneamente el campo The exception to this rule is the | ||||||||||
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El método collection.findOneAndDelete() retorna una Promise que resuelve a un único documento que la query borró. Si ningún documento coincide con la query especificada, la promesa se resuelve en null.
Promise<object | null>
collection.insertOne()
Inserta un único documento en una colección y devuelve el _id del documento insertado.
const newItem = { "name": "Plastic Bricks", "quantity": 10, "category": "toys", "reviews": [{ "username": "legolover", "comment": "These are awesome!" }] }; itemsCollection.insertOne(newItem) .then(result => console.log(`Successfully inserted item with _id: ${result.insertedId}`)) .catch(err => console.error(`Failed to insert item: ${err}`))
Parámetros
insertOne(document: object): Promise<object>
Parameter | Tipo | Descripción |
|---|---|---|
|
| Un documento para insertar en la colección. |
Valor de retorno
El método collection.insertOne() devuelve una Promise que resuelve un documento que describe la operación de inserción.
Promise<object>
Valor | Tipo | Descripción |
|---|---|---|
|
| El valor |
collection.insertMany()
Inserta uno o más documentos en una colección y devuelve una lista que contiene el valor de _id para cada documento insertado.
const doc1 = { "name": "basketball", "category": "sports", "quantity": 20, "reviews": [] }; const doc2 = { "name": "football", "category": "sports", "quantity": 30, "reviews": [] }; return itemsCollection.insertMany([doc1, doc2]) .then(result => { console.log(`Successfully inserted ${result.insertedIds.length} items!`); return result }) .catch(err => console.error(`Failed to insert documents: ${err}`))
Parámetros
insertMany( document: object, options?: { ordered?: boolean }, ): Promise<object>
Parameter | Tipo | Descripción |
|---|---|---|
|
| Un arreglo de documentos para insertar en la colección. |
|
| Un objeto que especifica opciones de configuración adicionales. |
|
| opcional. Un valor booleano que especifica si la instancia mongod debe ejecutar una inserción ordenada o desordenada. El valor por defecto es |
Valor de retorno
El método collection.insertMany() devuelve una Promise que resuelve un documento que describe la operación de inserción.
Promise<object>
Valor | Tipo | Descripción |
|---|---|---|
|
| Un arreglo que contiene los valores de |
collection.updateOne()
Actualiza un solo documento en una colección y devuelve metadatos sobre la operación.
const query = { "name": "football" }; const update = { "$push": { "reviews": { "username": "tombradyfan", "comment": "I love football!!!" } } }; const options = { "upsert": false }; itemsCollection.updateOne(query, update, options) .then(result => { const { matchedCount, modifiedCount } = result; if(matchedCount && modifiedCount) { console.log(`Successfully added a new review.`) } }) .catch(err => console.error(`Failed to add review: ${err}`))
Parámetros
updateOne( query: object, update: object, options?: object ): Promise<object>
Parameter | Tipo | Descripción |
|---|---|---|
|
| Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. |
|
| Un documento de actualizar que especifica modificaciones para realizar usando MongoDB operadores de actualizar. |
|
| Un objeto que especifica opciones de configuración adicionales. |
|
| Opcional. Por defecto: Un valor booleano que, si |
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El método collection.updateOne() devuelve una Promise que resuelve a un documento que describe la operación de actualización.
Promise<object>
Valor | Tipo | Descripción |
|---|---|---|
|
| El número de documentos en la colección que coinciden con la query proporcionada. |
|
| La cantidad de documentos en la colección que fueron modificados por la operación de actualización. |
|
| El valor |
collection.updateMany()
Actualiza uno o más documentos en una colección y devuelve metadatos sobre la operación.
const query = {}; const update = { "$mul": { "quantity": 10 } }; const options = { "upsert": false } return itemsCollection.updateMany(query, update, options) .then(result => { const { matchedCount, modifiedCount } = result; console.log(`Successfully matched ${matchedCount} and modified ${modifiedCount} items.`) return result }) .catch(err => console.error(`Failed to update items: ${err}`))
Parámetros
updateMany( query: object, update: object, options?: object ): Promise<object>
Parameter | Tipo | Descripción |
|---|---|---|
|
| Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. |
|
| Un documento de actualizar que especifica modificaciones para realizar usando MongoDB operadores de actualizar. |
|
| Un objeto que especifica opciones de configuración adicionales. |
|
| Opcional. Por defecto: Un valor booleano que, si |
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El método collection.updateMany() devuelve una Promise que resuelve a un documento que describe la operación de actualización.
Promise<object>
Valor | Tipo | Descripción |
|---|---|---|
|
| El número de documentos en la colección que coinciden con la query proporcionada. |
|
| La cantidad de documentos en la colección que fueron modificados por la operación de actualización. |
|
| El valor |
collection.deleteOne()
Elimina un único documento de una colección.
const query = { "name": "lego" }; itemsCollection.deleteOne(query) .then(result => console.log(`Deleted ${result.deletedCount} item.`)) .catch(err => console.error(`Delete failed with error: ${err}`))
Parámetros
deleteOne( query: object, options?: object ): Promise<object>
Parameter | Tipo | Descripción |
|---|---|---|
|
| Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. |
|
| Un objeto que especifica opciones de configuración adicionales. |
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El collection.deleteOne() método devuelve una Promesa que se resuelve en un documento que describe la operación de eliminación.
Promise<object>
Valor | Tipo | Descripción |
|---|---|---|
|
| El número de documentos en la colección que fueron eliminados por la operación de borrado. |
colección.deleteMany()
Eliminar uno o más documentos de una colección.
const query = { "reviews": { "$size": 0 } }; itemsCollection.deleteMany(query) .then(result => console.log(`Deleted ${result.deletedCount} item(s).`)) .catch(err => console.error(`Delete failed with error: ${err}`))
Parámetros
deleteMany( query: object, options?: object ): Promise<object>
Parameter | Tipo | Descripción |
|---|---|---|
|
| Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. |
|
| Un objeto que especifica opciones de configuración adicionales. |
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El collection.deleteMany() método devuelve una Promesa que se resuelve en un documento que describe la operación de eliminación.
Promise<object>
Valor | Tipo | Descripción |
|---|---|---|
|
| El número de documentos en la colección que fueron eliminados por la operación de borrado. |
collection.aggregate()
Ejecuta un pipeline de agregación y devuelve un cursor que te permite acceder a los documentos de salida del pipeline.
const pipeline = [ { "$group": { "_id": "$customerId", "numPurchases": { "$sum": 1 }, "numItemsPurchased": { "$sum": { "$size": "$items" } } } }, { "$addFields": { "averageNumItemsPurchased": { "$divide": ["$numItemsPurchased", "$numPurchases"] } } } ] return purchasesCollection.aggregate(pipeline).toArray() .then(customers => { console.log(`Successfully grouped purchases for ${customers.length} customers.`) for(const customer of customers) { console.log(`customer: ${customer._id}`) console.log(`num purchases: ${customer.numPurchases}`) console.log(`total items purchased: ${customer.numItemsPurchased}`) console.log(`average items per purchase: ${customer.averageNumItemsPurchased}`) } return customers }) .catch(err => console.error(`Failed to group purchases by customer: ${err}`))
Parámetros
aggregate( pipeline: object[], options?: object ): Cursor
Parameter | Tipo | Descripción |
|---|---|---|
|
| Un arreglo de una o más etapas del pipeline de agregación. NotaEtapas admitidas de agregaciónAtlas App Services admite casi todas las etapas del pipeline de agregación y operadores de MongoDB, pero algunas etapas y operadores deben ejecutarse dentro de una función del sistema. Consulta Limitaciones del marco de trabajo de agregación para obtener más información. |
|
| Un objeto que especifica opciones de configuración adicionales. |
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El método collection.aggregate() retorna un objeto cursor que apunta a cualquier documento generado en la etapa final de la pipeline de agregación. Puedes manipular y acceder a los documentos del conjunto de resultados de agregación con los siguientes métodos:
Método | Descripción | ||
|---|---|---|---|
| Itera sobre el cursor y devuelve una Promise que se resuelve en el siguiente documento en el cursor. Si el cursor se agota, la promesa se resuelve en Ejemplo | ||
| Itera el cursor hasta agotarlo y retorna un Promise que se resuelve con un arreglo que contiene todos los documentos iterados. Ejemplo | ||
| Especifica la cantidad de documentos coincidentes que se omitirán del conjunto de resultados de agregación. MongoDB omite los documentos del conjunto de resultados en orden de clasificación hasta que se omite la cantidad especificada. NotaNo puede llamar a este método después de recuperar uno o más documentos utilizando |
Nota
No puedes retornar un cursor desde una función. En su lugar, evalúe el cursor usando cursor.next() o cursor.toArray() y devuelva el resultado.
collection.count()
Devuelve la cantidad de documentos en una colección o vista que coinciden con una query determinada.
return itemsCollection.count({ "reviews.0": { "$exists": true } }) .then(numDocs => console.log(`${numDocs} items have a review.`)) .catch(err => console.error("Failed to count documents: ", err))
Parámetros
count( query?: object, options?: object ): Promise<number>
Parameter | Tipo | Descripción |
|---|---|---|
|
| Opcional. Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. |
|
| Un objeto que especifica opciones de configuración adicionales. |
|
| opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Para aprender más, consulte Transacciones. |
Valor de retorno
El método collection.count() devuelve una Promise que se resuelve en el número entero de documentos de la colección que cumplen con la query.
Promise<number>
Valor | Descripción |
|---|---|
Count Result numDocs: <integer> | El número de documentos en la colección que coinciden con la query proporcionada. |
collection.distinct()
Busca documentos que coincidan con un filtro de query específico y devuelve una lista de valores distintos para un campo específico en todos los documentos coincidentes.
1 const taskCollection = context.services.get("mongodb-atlas") 2 .db("tracker").collection("tasks"); 3 4 return taskCollection.distinct("status", {}) 5 .then(results => { 6 console.log(JSON.stringify(results)); 7 console.log(results.length); 8 }) 9 .catch(err => console.error(err))
Parámetros
distinct( field: string, query: object, options?: object ): Promise<any[]>
Parameter | Tipo | Descripción |
|---|---|---|
|
| El nombre del campo en cada documento desde el cual encontrar valores distintos. |
|
| Un filtro de query que especifica qué documentos encontrar. Especifica una query vacía ( You can use most query selectors except for evaluation, geospatial, or bitwise selectors. You may only use these selectors in system functions. |
|
| Un objeto que especifica opciones de configuración adicionales. |
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
El método collection.distinct() retorna una Promise que se resuelve en un arreglo de valores distintos.
Promise<any[]>
colección.bulkWrite()
Realiza múltiples operaciones de inserción, actualización y eliminación en una colección con una sola llamada. Dentro de la función bulkWrite(), puedes especificar una o más de las siguientes operaciones de escritura:
insertOne
updateOne
updateMany
deleteOne
deleteMany
replaceOne
Nota
Una escritura masiva solo puede operar en una única colección.
exports = async function(arg){ const doc1 = { "name": "velvet elvis", "quantity": 20, "reviews": [] }; const doc2 = { "name": "mock turtleneck", "quantity": 30, "reviews": [] }; var collection = context.services.get("mongodb-atlas") .db("store") .collection("purchases"); return await collection.bulkWrite( [{ insertOne: doc1}, { insertOne: doc2}], {ordered:true}); };
Parámetros
bulkWrite( operations: object[], options?: object ): Promise<null>
Parameter | Tipo | Descripción | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Un arreglo de operaciones bulkWrite por realizar. Ejemplos de operaciones admitidas incluyen lo siguiente: | |||||||||||
|
| Un objeto que especifica opciones de configuración adicionales. | |||||||||||
|
| Opcional. Por defecto: Si Si NotaLas operaciones desordenadas son teóricamente más rápidas, ya que MongoDB puede ejecutarlas en paralelo, pero sólo deben utilizarse si los guardados no dependen del orden. | |||||||||||
|
| Opcional. Por defecto: Si | |||||||||||
|
| Opcional. Un objeto de sesión que representa el contexto de la transacción en el que ocurre la operación. Si deseas aprender más información, consulta Transacciones. |
Valor de retorno
La función collection.bulkWrite() devuelve un Promise que se resuelve en null.
Promise<null>