Snippets Collections
[
  {
    $project: {
      _id: 1,
      followUps: 1,
      duplicateNames: {
        $filter: {
          input: {
            $map: {
              input: "$followUps",
              as: "f",
              in: "$$f.name"
            }
          },
          as: "name",
          cond: {
            $and: [
              { $ne: ["$$name", "Check_in"] }, 
              {
                $gt: [
                  { $size: {
                      $filter: {
                        input: {
                          $filter: {
                            input: "$followUps",
                            as: "innerF",
                            cond: { $eq: ["$$innerF.name", "$$name"] }
                          }
                        },
                        as: "duplicate",
                        cond: { $eq: ["$$duplicate.name", "$$name"] }
                      }
                    }
                  },
                  1
                ]
              }
            ]
          }
        }
      }
    }
  },
  {
    $match: {
      $expr: { $gt: [{ $size: "$duplicateNames" }, 0] }
    }
  },
  {
    $project: {
      _id: 1
    }
  }
]
[
    {
        "$lookup": {
            "from": "participant",
            "localField": "participantId",
            "foreignField": "_id",
            "as": "participants"
        }
    },
    {
        "$unwind": {
            "path": "$participants",
            "preserveNullAndEmptyArrays": true
        }
    },
    {
        "$lookup": {
            "from": "subscription",
            "localField": "participantId",
            "foreignField": "userId",
            "as": "subscriptions"
        }
    },
    {
        "$unwind": {
            "path": "$subscriptions",
            "preserveNullAndEmptyArrays": true
        }
    },
    {
        "$lookup": {
            "from": "subscriptionPlan",
            "localField": "subscriptions.planId",
            "foreignField": "_id",
            "as": "subscriptionPlans"
        }
    },
    {
        "$unwind": {
            "path": "$subscriptionPlans",
            "preserveNullAndEmptyArrays": true
        }
    },
    {
        "$match": {
            "nutritionistID": {
                "$oid": "64782249defe1c75d7689cbd"
            }
        }
    },
    {
        "$match": {
            "subscriptions.planId": {
                "$exists": true
            }
        }
    },
    {
        "$match": {
            "participants": {
                "$exists": true
            }
        }
    },
    {
        "$match": {
            "participants": {
                "$exists": true
            }
        }
    },
    {
        "$match": {
            "active": true
        }
    }
]




//query 2
[
    {
        "$lookup": {
            "from": "participant",
            "localField": "participantId",
            "foreignField": "_id",
            "as": "participants"
        }
    },
    {
        "$unwind": {
            "path": "$participants",
            "preserveNullAndEmptyArrays": true
        }
    },
    {
        "$lookup": {
            "from": "subscription",
            "localField": "participantId",
            "foreignField": "userId",
            "as": "subscriptions"
        }
    },
    {
        "$unwind": {
            "path": "$subscriptions",
            "preserveNullAndEmptyArrays": true
        }
    },
    {
        "$lookup": {
            "from": "subscriptionPlan",
            "localField": "subscriptions.planId",
            "foreignField": "_id",
            "as": "subscriptionPlans"
        }
    },
    {
        "$unwind": {
            "path": "$subscriptionPlans",
            "preserveNullAndEmptyArrays": true
        }
    },
    {
        "$match": {
            "nutritionistID": {
                "$oid": "64782249defe1c75d7689cbd"
            }
        }
    },
    {
        "$match": {
            "subscriptions.planId": {
                "$exists": false
            }
        }
    },
    {
        "$match": {
            "participants": {
                "$exists": true
            }
        }
    },
    {
        "$match": {
            "participants": {
                "$exists": true
            }
        }
    },
    {
        "$match": {
            "active": true
        }
    }
]



for tavishi table is -> userNutrionistMapping
[
    {
        "$match": {
            "challengeId": ObjectId("6674404413958543b594fe6f")
        }
    },
    {
        "$project": {
            "email": "$registrationDetails.email",
            "points": "$overAllImpact.point",
            "WeightImpact": "$overAllImpact.overAllWeightImpact",
            "eventPoints": "$eventPoint",
            "weeklyWeightLog": {
                "$objectToArray": "$weeklyWeightLog"
            }
        }
    },
    {
        "$unwind": "$weeklyWeightLog"
    },
    {
        "$addFields": {
            "weeklyWeightLog.kDate": {
                "$toDate": "$weeklyWeightLog.k"
            }
        }
    },
    {
        "$sort": {
            "weeklyWeightLog.kDate": -1
        }
    }
]
star

Mon Oct 14 2024 12:29:45 GMT+0000 (Coordinated Universal Time)

#aggregation #mongodb #$objecttoarray #$addfiels
star

Thu Aug 01 2024 04:51:26 GMT+0000 (Coordinated Universal Time)

#aggregation #mongodb #$objecttoarray #$addfiels
star

Fri Jun 28 2024 05:38:13 GMT+0000 (Coordinated Universal Time) eyJkYXRhc2V0X3F1ZXJ5Ijp7InR5cGUiOiJuYXRpdmUiLCJuYXRpdmUiOnsiY29sbGVjdGlvbiI6InVzZXJDaGFsbGVuZ2VNYXBwaW5nIiwicXVlcnkiOiJbXHJcbiAgICB7XHJcbiAgICAgICAgXCIkbWF0Y2hcIjoge1xyXG4gICAgICAgICAgICBcImNoYWxsZW5nZUlkXCI6IE9iamVjdElkKFwiNjY3NDQwNDQxMzk1ODU0M2I1OTRmZTZmXCIpXHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBcIiRwcm9qZWN0XCI6IHtcclxuICAgICAgICAgICAgXCJlbWFpbFwiOiBcIiRyZWdpc3RyYXRpb25EZXRhaWxzLmVtYWlsXCIsXHJcbiAgICAgICAgICAgIFwicG9pbnRzXCI6IFwiJG92ZXJBbGxJbXBhY3QucG9pbnRcIixcclxuICAgICAgICAgICAgXCJXZWlnaHRJbXBhY3RcIjogXCIkb3ZlckFsbEltcGFjdC5vdmVyQWxsV2VpZ2h0SW1wYWN0XCIsXHJcbiAgICAgICAgICAgIFwiZXZlbnRQb2ludHNcIjogXCIkZXZlbnRQb2ludFwiLFxyXG4gICAgICAgICAgICBcIndlZWtseVdlaWdodExvZ1wiOiB7XHJcbiAgICAgICAgICAgICAgICBcIiRvYmplY3RUb0FycmF5XCI6IFwiJHdlZWtseVdlaWdodExvZ1wiXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIFwiJHVud2luZFwiOiBcIiR3ZWVrbHlXZWlnaHRMb2dcIlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBcIiRhZGRGaWVsZHNcIjoge1xyXG4gICAgICAgICAgICBcIndlZWtseVdlaWdodExvZy5rRGF0ZVwiOiB7XHJcbiAgICAgICAgICAgICAgICBcIiR0b0RhdGVcIjogXCIkd2Vla2x5V2VpZ2h0TG9nLmtcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBcIiRzb3J0XCI6IHtcclxuICAgICAgICAgICAgXCJ3ZWVrbHlXZWlnaHRMb2cua0RhdGVcIjogLTFcclxuICAgICAgICB9XHJcbiAgICB9XHJcbl1cclxuIiwidGVtcGxhdGUtdGFncyI6e319LCJkYXRhYmFzZSI6Mn0sImRpc3BsYXkiOiJ0YWJsZSIsInZpc3VhbGl6YXRpb25fc2V0dGluZ3MiOnt9fQ

#aggregation #mongodb #$objecttoarray #$addfiels

Save snippets that work with our extensions

Available in the Chrome Web Store Get Firefox Add-on Get VS Code extension