Database

db={"documents":[{"_id":{"$oid":"64a4bc1b4655c9a18a360519"},"name":"Document 1","array":[{"$oid":"64a4bc28ff62e5daf9603076"},{"$oid":"64a4bc30daac4516a11919cd"}]}],"arrayDocuments":[{"_id":{"$oid":"64a4bc28ff62e5daf9603076"},"name":"Array Document 1","nestedArray":[{"$oid":"64a4bc387e97570b7f9ed497"}]},{"_id":{"$oid":"64a4bc30daac4516a11919cd"},"name":"Array Document 2"}],"nestedArrayDocuments":[{"_id":{"$oid":"64a4bc387e97570b7f9ed497"},"name":"Nested Array Document 1",}]}

Query

db.documents.aggregate([{"$lookup":{from:"arrayDocuments",let:{arrayDocs:"$array",},pipeline:[{$match:{$expr:{$in:["$_id","$$arrayDocs"],},},},{$lookup:{from:"nestedArrayDocuments",let:{nestedArrayDocs:"$nestedArray",},pipeline:[{$match:{$expr:{$in:["$_id",{$ifNull:["$$nestedArrayDocs",[],],},],},},},],as:"nestedArray",},},],as:"array",}}])

Result