Din terminologi er slået fra, da den struktur ikke er en "multidimensional" matrix, da de har "arrays inden for arrays", deraf "dimensioner". Dette er blot "objekter" i et array.
Så dit problem her er et grundlæggende tilfælde af at have argumenterne den forkerte vej rundt. Du behøver ikke $in
bare for at søge i et array, men det kræver snarere en "liste/array" af argumenter at anvende på feltet.
Kort sagt, slå bare feltet op og brug "dot notation" :
.find({ "subRegions.code": regionCode }).exec(...);
Du behøver kun $in
for i det væsentlige en $or
betingelse, ved at finde alternative værdier for subRegions.code
, så det behøver du ikke, når der kun er én værdi, der matcher.