Database

[{"_id":ObjectId("627ce38702f566ef8e89977a"),"name":"max","sub":{"type":"maths","grades":[{"semOne":[7,8,9]},{"semTwo":[9,11,12]}]}}]

Query

db.collection.update({"_id":ObjectId("627ce38702f566ef8e89977a")},{$push:{"sub.grades.$[g].semOne":13}},{arrayFilters:[{"g.semOne":{$exists:true}}],multi:true})

Result