sql >> データベース >  >> NoSQL >> MongoDB

クエリMongoDbアグリゲートは2つのコレクションに参加します

    $someFieldを宣言するだけです。 レットセクションで。

    db.collectionA.aggregate([
      {
        $lookup: {
          from: 'collectionB',
          let: { some_field: '$someField' },
          pipeline: [
            { $match: {
                $expr: {
                  $and: [
                    { $eq: [ "$someField", "$$some_field" ] },
                    { $eq: [ "$otherField", "789" ] }
                  ]
                }
              }
            }
          ],
          as: 'B'
        }
      },
      {
        $match: {
          $expr: {
            $gt: [ { $size: "$B" }, 0 ]
          }
        }
      }
    ])
    

    https://mongoplayground.net/p/RTiUMWl8QaX



    1. MEANJS:413(リクエストエンティティが大きすぎます)

    2. MongoDB $ isoWeek

    3. pymongoから生のmongodbコマンドを実行する方法

    4. Pymongo:コレクション内のすべてのドキュメントを反復処理します