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

mongoDB Deltag på flere felter

I øjeblikket mongodb $lookup sammenligne kun enkelt lokal og udenlandske nøgle.

Men hvis du vil udføre en forespørgsel som f.eks. mysql left join med to eller flere arkiverede, så er løsningen nedenfor.

db.getCollection('LeftTable').aggregate([
{
    $lookup:
        {
          from: "RightTable",
          localField: "ID",
          foreignField: "ID",
          as: "RightTableData"
        }
},  
{$unwind :"$RightTableData" },
{ 
     $project: { 
            mid: { $cond: [ { $eq: [ '$MID', '$RightTableData.MID' ] }, 1, 0 ] } 
        } 
},
{$match : { mid : 1}}

])

Her er $MID LeftTable MID felt.



  1. php-redis - Er der en måde at gemme PHP-objekt i Redis uden at serialisere det?

  2. Automatisk stigningssekvens i NestJs/Mongoose

  3. Indlæs gnistdata i Mongo / Memcached til brug af en webservice

  4. MongoDB C# Aggregation - slap af -> groupBy