У меня есть MongoDB документы со следующей структурой:запроса внутренний массив в MongoDB
{
name:'some name here',
someStuff: [
{
type: 'banana',
colors:['yellow','red]
},
{
type: 'apple',
colors:['red','blue','orange']
}
]
}
Я хотел бы запросить все документы, которые содержат по крайней мере один цвет из массива, такие как [ «красного», «зеленый»]
Я попробовал следующий запрос, но он не работает:
db.SomeDB.find({
"someStuff": {
$elemMatch: {
"colors": {
$elemMatch: {
"$in": ['red', 'green']
}
}
}
}
вы можете дать мне несколько советов, как написать этот запрос?
спасибо, ваше решение работает, но Ответ chridam более "изящный" – Igor