ı koleksiyonunda aşağıdaki belgeleri var diyelim: sonucunMongoDB: Alt belge alanı değerlerinin ayrı bir listesi nasıl alınır?
[ "John", "Anna", "Kevin" ]
Yapısı farklı olabilir:
{
"family": "Smith",
"children": [
{
"child_name": "John"
},
{
"child_name": "Anna"
},
]
}
{
"family": "Williams",
"children": [
{
"child_name": "Anna"
},
{
"child_name": "Kevin"
},
]
}
Şimdi tüm aileleri çapraz bir şekilde benzersiz çocuk isimleri aşağıdaki listeyi almak istiyorum. MongoDB'de bunu nasıl başarabilirim? Basit bir şey olmalı ama anlayamıyorum. Toplamada aggregate() işlevini denedim, ancak distinct() işlevini nasıl uygulayacağımı bilmiyorum.
db.collection.aggregate([{$unwind:'$children'}, {$group:{_id:'$children.child_name'}}])
veya daha fazla ilgi;) adının frekans ile: yardım toplama çerçevesine
http://docs.mongodb.org/manual/core/map-reduce/ –