Database

[{"_id":{"article_journal":"jnl_2","stage_id":"jnl_2_wf_2","stage_code":"review"},"article_count":1.0,"journal_title":"Test Journal","journal":[{"_id":ObjectId("5cd10b325586e9122761f675"),"jnl_code":"jnl_2","jnl_title":"Test Journal","jnl_workflow":[{"wf_stages":[{"wf_stage_id":"jnl_2_wf_1","wf_stage_code":"submit","wf_stage_name":"Submit",},{"wf_stage_id":"jnl_2_wf_2","wf_stage_code":"review","wf_stage_name":"Review",},{"wf_stage_id":"jnl_2_wf_3","wf_stage_code":"publish","wf_stage_name":"Publish",}]}]}],}]

Query

db.collection.aggregate([{$group:{_id:{article_journal:"$_id.article_journal",stage_id:"$_id.stage_id",stage_code:"$_id.stage_code",data:"$$ROOT"}}},{$unwind:"$_id.data.journal"},{$addFields:{article_count:"$_id.data.article_count",journal_title:"$_id.data.journal_title",stage_name:{$map:{input:"$_id.data.journal.jnl_workflow.wf_stages.wf_stage_code",in:"$_id.stage_code"}}}},{$unwind:"$stage_name"},{$project:{"_id.data":0}}])

Result