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

Как мога да комбинирам няколко колекции в една колекция, използвайки $lookup mongodb или nodejs mongodb?

Трябва да използвате $skip и $limit, за да избегнете тази грешка. защо получавам тази грешка? трябва да прочетете връзката за коментар на @Alex.

db.products.aggregate([ 
    {$skip:0},{$limit: 1000},
    {$lookup:{from:"productgroups", localField:"productgroupid", foreignField:"productgroupid", as:"group"}},
    {$lookup:{from:"category", localField:"categoryid", foreignField:"categoryid", as:"category"}},
    {$lookup:{from:"divisions", localField:"divisionid", foreignField:"divisionid", as:"division"}},
    {$project: {productpoint:1,productname:1,productcode:1,productid:1,group: { $arrayElemAt: [ "$group", 0 ]},
                category: { $arrayElemAt: [ "$category", 0 ]}, division: { $arrayElemAt: [ "$division", 0 ]} }} 
  ]);

{$skip:0},{$limit: 1000} // за начален и след това за следващ път трябва да пропусне:1000, limit:1000 и т.н. можете да го получите от заявка или чрез използване на цикъл или като внедрите.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Неуспешно свързване на Mongoose с Atlas

  2. Свържете се с конкретна база данни по подразбиране в mongodb

  3. Премахване на конкретни елементи от масива с MongoDB

  4. Управление на MySQL, MongoDB и PostgreSQL с ChatOps от Slack

  5. Mongo – Игнорирайте собствеността, за да не бъде запазена