MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Grupa agregująca MongoDB na wewnętrznej kolekcji podrzędnej i uzyskaj kompletny dokument z liczbą

Główny problem polega na tym, że musisz przejść przez całą kolekcję (w tej sytuacji nie możesz użyć indeksów do przyspieszenia procesu).

Możesz wypróbować ten kod (ma mniej operacji niż twój):

db.getCollection('User').aggregate([
    {
        $unwind: "$UserSubscriptions"
    },
    {
        $group: {
            _id:"$UserSubscriptions.Subscription.Publication.Code",
            users: {$addToSet: "$_id"}
        }
    },
    {
        $project: {"PublicationCode": "$_id", "Count": {$size: "$users"}}
    }
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Passport.js i Mongoose.js wypełniają użytkownika przy logowaniu - traci wypełnione pole na req.user

  2. Jak zaimportować folder zrzutu do bazy danych mongodb?

  3. Czy framework Mongodb Aggregation jest szybszy niż map/reduce?

  4. node.js mongodb wybierz dokument według _id node-mongodb-native

  5. Wysyłanie zapytań z połączeniami i filtrami w Mongoose