У Брайана был отличный совет, который вы должны прислушаться.
Также, как сказал Маной, у вас на самом деле есть массив объектов. Следующие может помочь вам немного ...
Списки только упорядоченные последовательности: [1,2,3...]
или [2,292,111]
первым элементом в последнем примере 2, второй 292 ... списки/массивы обозначаются в квадратные скобки [ ]
объекты ключей карт до значений: { name: "Tyler", age: 26, fav_color: "green" }
название карты в «Тайлер», возраст карты до 25, и т.д ... и объекты обозначаются скобками { }
Документ в mongodb - это объект. Итак, как и выше, они сопоставляют ключи со значениями. Эти значения могут быть строками, числами, массивами ... или другими даже другими (вложенными) объектами)
Итак, давайте взглянем на ваш документ. У вас есть объект (документ), который имеет ключи id, name, other и multipleArray. Множество карт с множеством значений представляет собой массив [ ]
объектов { }
.
{
id: x,
name: y,
other: z,
multipleArray: [
{lab1: "A", lab2: "B", lab3:"C"},
{lab1: "AB", lab2: "BB", lab3:"CB"},
{lab1: "AC", lab2: "BC", lab3:"CC"}
]
}
MongoDB есть эта функция называется multikeys, она в основном принимает значение, которое вы запрашиваете для и пытается сопоставить его с каждым значением в массиве.
Если вы хотите найти документ, в котором multipleArray
содержащийся документ {lab1: "A", lab2: "B", lab3: "C"}
, вы запрашиваете, как это: db.data.find({multipleArray: {lab1: "A", lab2: "B", lab3: "C"}})
Я предполагаю, что х, у и г определяются уже.
Есть больше тонкостей и сложностей, но если вы хотите узнать больше, прочитайте документацию на сайте mongodb here или получите книгу.
в вашем примере, multipleArray не является массивом массивов. Его просто массив объектов. Вы уверены, что ваш ввод верен? – Manoj
Привет, извините, что я недостаточно осведомлен. Какая разница между массивом массивов и массивом объектов в этом случае? Не могли бы вы объяснить? Спасибо. – Phil