sql >> Database >  >> NoSQL >> MongoDB

Hoe te sorteren met de som van 2 velden in MongoDB

U kunt onderstaande aggregatie in 3.4 proberen voor aangepaste sortering.

Gebruik $add om de upvotes en downvotes op te tellen in $addFields om de berekende waarde te behouden als het extra veld in het document, gevolgd door $sort sorteer op veld.

$project met uitsluiting om het sorteerveld te laten vallen om de verwachte output te krijgen.

db.col.aggregate([
 {"$addFields":{ "sort_order":{"$add":["$upvotes", "$downvotes"]}}}, 
 {"$sort":{"sort_order":-1}},
 {"$project":{"sort_order":0}}
])


  1. Selecteer Max() met group by in mongodb

  2. Dubbelzinnige discriminator 'myType' wanneer 'myType' dynamisch wordt gegenereerd tijdens runtime

  3. MongoDb:hoe importeer ik dumpgegevens uit een .gz-bestand?

  4. mongodb onmogelijk (?) E11000 dubbele sleutel fout dup sleutel bij upserting