sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongodb Aggregation ramgrupp och sortera

Du kan göra så här:

db.collection.aggregate( 
    {$sort:{"time":1}},
    { $group:
        { _id: "$sessionId",
        messages: { "$push": {message: "$msg", time: "$time"} }
        }
    } 
)

Detta kommer att sortera samlingen baserat på tid och sedan gruppera efter sessions-id. Varje sessions-ID-grupp kommer att ha en uppsättning underdokument som innehåller meddelandet och tidpunkten för meddelandet. Genom att sortera och sedan trycka kommer meddelandena att ordnas efter tid i din meddelandematris.




  1. Mongodb 2dsphere-index för kapslade arrayfält

  2. MongoDB Exempel för Yesod / Persistent

  3. Finns det några verktyg för att uppskatta indexstorlek i MongoDB?

  4. MongoDB på mLab-autentisering misslyckas