MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как да филтрирате масив в заявка за mongodb

Ако искате само обектът вътре в масива StackSummaries, трябва да използвате $unwind клауза, за да разширите масива, да филтрирате желаните от вас документи и след това да проектирате само частите от документа, които всъщност искате.

Заявката ще изглежда така:

db.cf_list_stacks.aggregate([
    { '$unwind' : '$StackSummaries' },
    { '$match' : { 'StackSummaries.StackStatus' : 'CREATE_COMPLETE' } },
    { '$project' : { 
         'TemplateDescription' : '$StackSummaries.TemplateDescription',
         'StackStatusReason' : '$StackSummaries.StackStatusReason',
         ...
    } }
])

Полезни връзки:



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Различен брой на множество полета, използвайки агрегиране на mongodb

  2. Преместване на HDFS данни в MongoDB

  3. mongoengine +django как да преброим броя на елементите с едно и също съдържание

  4. mongodb schema.createIndex не е функция

  5. Атомно преместване на обект по ID от един масив в друг в същия документ