その構造は「多次元」配列ではないため、用語は正しくありません。これらには「配列内の配列」、つまり「次元」があるためです。これは、配列内の単なる「オブジェクト」です。
したがって、ここでの問題は、引数が間違った方向にあるという基本的なケースです。 $in
は必要ありません
配列を検索するだけでなく、フィールドに適用するには引数の「リスト/配列」が必要です。
つまり、フィールドを検索し、"ドット表記"を使用します。 a> :
.find({ "subRegions.code": regionCode }).exec(...);
必要なのは$in
だけです 基本的に$or
の場合 条件、subRegions.code
の代替値を検索 、したがって、一致する値が1つしかない場合は、これは必要ありません。