No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Persistencia de datos con $out

11/21
Recursos

Aportes 2

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Código visto en clase

db.orders.updateOne( // actualizamos la orden
    { // hacemos match con la orden que queremos actualizar
        _id: ObjectId('649cb8c89f973670e36e123f')   
    },
    {   // mostramos el cambio, agregando un nuevo elemento
        $push: { // agregar elemento
            items: { // quien se lo agrego
                name: 'Producto 1',
                qty: 2,
                price: 12,
                product_id: ObjectId('649923f457514437ac501dd4')  
            }
        },
        $inc: { // incrementador
            total: 12 * 2 // total = total + price * qty
        }
    }
)

//

[
    {$sort: {
        "address.market": 1,
        price: -1
    }},
    {
        $group: {
            _id: "$address.market",
            masCostosas: {
                $first: {
                    name: "$name",
                    price: "$price"
                }
            }
        }
    } ,
    {
        $out: "propiedadesMasCostosas"
    }
]


Aqui mi solucion al reto, aunque no es como me lo esperaba y no me quize complicar 😅.

En la base de datos no hay calificacion de 1-5⭐ asi que use el valor de review_scores_rating que es una puntacion de 1-100 y lo ordene de forma descendente en base al review_scores_rating.

Aqui el codigo 👇

use("sample_airbnb")
db.listingsAndReviews.aggregate([
    {$sort: {
        "review_scores.review_scores_rating": -1
        }
    },
    {
        $project: {
            "_id":0,
          "Nombre de la propiedad:": "$name",
          "Imagen de la propiedad:": "$images.picture_url",
          "Tipo de propiedad:": "$property_type",
          "Numero de camas:": "$beds",
          "Noches minimas de estadia:":"$minimum_nights",
          "Noches maximas de estadia:":"$maximum_nights",
          "Precio:":"$price",
          "Numero de reviews:":"$number_of_reviews",
          "Rating total de las reviews":"$review_scores.review_scores_rating"
        }
    },
    {
        $limit:1000
    },
    {
        $out: "designersReport"
    }
])

Query para ver los resultados

use("sample_airbnb")
db.designersReport.find()