Если вы хотите чтобы быть точно таким же, т.е. первый элемент должен быть 1 и вторым элементом равным 2, затем используйте
db.coll.find({"array.0": 1, "array.1": 2})
Однако, это также вернет документы, где нет ни одного элемента с индексом 3. Если вы хотите, чтобы третий элемент должен присутствовать, используйте:
db.coll.find({"array.0": 1, "array.1": 2, "array.2": {"$exists": true}})
Кроме того, это будет возвращать массивы, длина может быть больше чем 3. Если вы специально искали массивы, длина которых 3 только, то вы можете использовать $where
, чтобы проверить длину
db.coll.find({"array.0": 1, "array.1": 2, "array.2": {"$exists": true}, $where:'this.array.length==3'})
Если это сложно, и вы просто ищете г где массив содержит 1 и 2 независимо от порядка и независимо от наличия третьего элемента, а затем просто используйте:
db.coll.find({"array": {"$all": [1,2]}})
Какой код у вас есть на данный момент? – Lizz
Вы можете включить в свой вопрос, что вы пробовали до сих пор, чтобы мы могли сказать, почему код, который вы пробовали, не дает вам правильного результата. Вам нужно взглянуть на оператор запроса mordodb '$ in'. – BatScream
спасибо, я пробовал $ all, но не работал – Tree