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

Hvordan kan jeg kombinere flere samlinger til én samling ved hjælp af $lookup mongodb eller nodejs mongodb?

Du bør bruge $skip og $limit for at undgå denne fejl. hvorfor får denne fejl? du skal læse @Alex kommentarlink.

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} // for initial og derefter til næste gang skal springe over:1000, limit:1000 og så videre. du kan få det efter anmodning eller ved at bruge loop eller som du implementerer.




  1. Mongos Installation/Opsætning i Elastic Beanstalk

  2. Python-databaseprogrammering med MongoDB for begyndere

  3. Med Redis Cluster, er det muligt bare at videregive hash-tags til eval?

  4. Mongodb:Forespørg et json-objekt indlejret i et array