2016-03-28 14 views
0

bu Sorunun cevabı (https://stackoverflow.com/a/20817040/2656506) takiben Ben bunu temel alan bu komutla ilk karakteri gruba başardı:MongoDB: İlk karaktere göre gruplandırılmış ve 2. alanı eşleştiren bir koleksiyonda bir alan sayısını nasıl alabilirim?

db.kits.aggregate({ $group: {_id: {$substr: ['$kit', 0, 1]}, count: {$sum: 1}}})

Ama nasıl olabilir ayrıca grubu sadece bu belgeleri çözemiyorum hangi Aynı sorguda _id: 'abc' gibi ek bir koşulu eşleştirin. Bir sorguda yapılabilir mi?

Şimdiden teşekkürler!

cevap

2

sizin toplama sorgusuna $match boru hattı aşama ekle:

db.kits.aggregate(
    [ 
     { 
      $match: { 
       _id: 'abc' 
      } 
     }, 
     { 
      $group: { 
       _id: { 
        $substr: ['$kit', 0, 1] 
       }, 
       count: {$sum: 1} 
      } 
     } 
    ] 
) 
İlgili konular