MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment gérer la division par zéro dans le cadre d'agrégation MongoDB

Vous voudrez peut-être utiliser le $cond opérateur pour gérer cela :

db.items.aggregate([
    {"$project":
        {
            "name": "$name",
            "upvotes": "$upvotes",
            "downvotes": "$downvotes",
            "quality": { $cond: [ { $eq: [ "$downvotes", 0 ] }, "N/A", {"$divide":["$upvotes", "$downvotes"]} ] }
        }
    },
    {"$sort": {"quality":-1}}
]);