Моя схема коллекции выглядит следующим образом:
Продукт
{
_id: ObjectId(), // default mongo db id
specification: [
{key: 'Name', value: "value 1"},
{key: 'Category', value: "value 2"},
{key: 'Department', value: "value 3"}
]
}
Теперь я хочу запросить это с помощью универсального фильтра c. Например,
- Получить все продукты с помощью
Name = value 1
и Category in [value 2, value 3]
и Department = value 3
- Получить все продукты с помощью
Name = value 1
, Category = value 2
или Department in [value 3, value 4]
Я пытался использовать $match
с $elemMatch
. Но это позволяет только один запрос, но я не могу использовать операторы $and
и $or
.