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

mongodbのフィルター配列

    • $map all_usersのループを繰り返す 配列
    • $cond idの場合は条件を確認してください 選択したユーザーのidにあります 次に、selectedで「yes」または「no」を返します。 フィールド
    • $mergeObject 現在のユーザーオブジェクトを上記のselectedとマージします フィールド
    db.collection.aggregate([
      {
        $project: {
          all_users: {
            $map: {
              input: "$all_users",
              in: {
                $mergeObjects: [
                  "$$this",
                  {
                    selected: {
                      $cond: [
                        { $in: ["$$this.id", "$selected_users.id"] },
                        "yes",
                        "no"
                      ]
                    }
                  }
                ]
              }
            }
          }
        }
      }
    ])
    

    遊び場



    1. mongodbのネストされた配列ドキュメントのn番目のドキュメントを更新します

    2. MongoDB for C#およびiPhoneアプリ

    3. mongodbクエリ内の複数のクエリ

    4. MongoDBは、パフォーマンスを向上させるためにドキュメントをRAMにプリロードします