sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvad er den korrekte måde at lave en HAVING i en MongoDB GROUP BY?

Nyt svar ved hjælp af Mongo-aggregationsramme

Efter at dette spørgsmål var stillet og besvaret, udgav 10gen Mongodb version 2.2 med en aggregeringsramme. Den nye bedste måde at udføre denne forespørgsel på er:

db.col.aggregate( [
   { $group: { _id: { userId: "$userId", name: "$name" },
               count: { $sum: 1 } } },
   { $match: { count: { $gt: 1 } } },
   { $project: { _id: 0, 
                 userId: "$_id.userId", 
                 name: "$_id.name", 
                 count: 1}}
] )

10gen har et praktisk SQL til Mongo Aggregation-konverteringsdiagram, der er værd at bogmærke.



  1. Sådan implementeres transaktion med rollback i Redis

  2. konfigurer redis auth på sidekiq

  3. Udskiftning af indlejret dokument i array i MongoDB

  4. MongoDB:Opdater hvert dokument på ét felt