Hi @Nuur_zakki_Zamani and @turivishal ,
There is actually a simple way to write it:
db.collection.updateOne({ "datas": {
"$elemMatch": {
"id": ObjectId("6350ce45605a1c2f35e4c607"),
"report.activityId": ObjectId("6350f1313f586971dfd1effd")
}
}},{$pull : { "datas.$.report" : { activityId: ObjectId("6350f13aaa8f2d84071fc3cd")} }})
The positional $ is working fine if there is only one occurrence of activityId: ObjectId("6350f13aaa8f2d84071fc3cd"
Thanks
Pavel