Conditional $sum in MongoDB
As Sammaye suggested, you need to use the $cond aggregation projection operator to do this: db.Sentiments.aggregate( { $project: { _id: 0, Company: 1, PosSentiment: {$cond: [{$gt: [‘$Sentiment’, 0]}, ‘$Sentiment’, 0]}, NegSentiment: {$cond: [{$lt: [‘$Sentiment’, 0]}, ‘$Sentiment’, 0]} }}, { $group: { _id: “$Company”, SumPosSentiment: {$sum: ‘$PosSentiment’}, SumNegSentiment: {$sum: ‘$NegSentiment’} }});