MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB obtém todos os campos + classifica por valor calculado de vários campos


Você pode usar $$ROOT para referenciar o documento raiz. Mantenha todos os campos deste documento em um campo e tente obtê-lo depois disso (dependendo do sistema do seu cliente:Java, C++, ...)
db.someCollection.aggregate(
    {
        $project: {
            sum: { $add: [ "$value1", "$value2", "$value3" ] },
            document: "$$ROOT"
        },
        $sort: {
            sum: -1
        }
    }
)