Моя Монго таблица содержит содержит и данные коллекции «Магазины», как ниже:Mongo запрос с использованием фильтра, не получающего точный результат?
{
"ShopId" : 9999,
"products" : [
{
"productId" : "1234",
"productName" : "abcd",
},
{
"productId" : "5678",
"productName" : "abc",
},
{
"productId" : "2345",
"productName" : "def",
}
],
}
Там будет несколько магазинов в таблице, имеющие список продуктов.
Требование:
Я хочу получать записи, имеющие shopId = 9999 и продукции соответствует строке ABC
Мой запрос
model.Shops.aggregate([{$match:{"ShopId":9999}},{$project:{products:{$filter:{input:'$products',cond: {'productName':/abc/ }}}}}])
Проблема:
Он извлекает productname:def
с другими данными, которые соответствуют productname:abc
.
Выполнение запроса. Но у меня есть еще одно сомнение. Если мне нужно разместить общую переменную для соответствия вместо «abc». Что мне делать между «/ /». Это/searchValue/или/+ searchValue +/ –
@midhunk see my edit – felix
Нет, его не работает .... :( –