sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB sorterar dokument efter kapslade data

Du måste använda aggregate kommando

Detta bör ge dig en lista med post _id med antalet kommentarer sorterade efter antalet i omvänd ordning.

Du kan använda $limit-operatorerna för att returnera de x översta raderna. t.ex. { $limit : 5 }

 db.posts.aggregate(
   { $unwind : "$comments" },
   { $group : { _id : "$_id" , number : { $sum : 1 } } },
   { $sort : { number : -1 } }
 );

Ta en titthttp://docs.mongodb.org/manual/tutorial/aggregation -exempel/




  1. Få position för valt dokument i samlingen [mongoDB]

  2. Kan inte fylla i stora delar av data till mongodb med Node.js

  3. MongoDb-fråga för att få maximalt fält i arrayen

  4. Hur ansluter man till Atlas M0 (Free Tier)-kluster korrekt via Java-drivrutin?