Я ищу для получения единого запроса для поиска и фильтрации. Но, как и ожидалось, когда я применял фильтрацию, условие фильтра применялось ко всем типам, поэтому я получил только результат того документа, у которого есть отфильтрованное свойство и значение.ElasticSearch NEST - Поиск по нескольким типам, но применять фильтр по выбранному типу
Например,
Здесь я искал в 3-х типов (продукт, категория, Manufacturer)
GET /my-index/Product,Category,Manufacturer/_search
{
"query": {
"filtered": {
"query": {...}, //--> Search a word which present in all types
"filter": {
"term": {
"ProductField": "VALUE"
}
}
}
}
}
Здесь я получил только результат продукта типа, потому что тип продукта содержит только поле, как 'ProductField' и имеет значение как 'VALUE'.
Что я ожидал это, с помощью одного запроса, принеси все типы результатов (товаров, Категория, изготовитель), что, удовлетворяющих поисковому запросу и применять фильтрацию только на продукт.
Так мои сомнения
Есть ли способ в упругом поиске применять фильтрацию определенного типа результатов поиска в одиночку, чем применение для всех типов?
Спасибо, One сомнения, является обязательным говоря уже о других, чем продукт в фильтре типов запрос? Как и вы добавили категорию и производителя в блок должен, потому что я добавил все в запрос Uri | POST/my-index/Product, Category, Manufacturer/_search – LMK
Попробуйте, но не исключайте условие 'minimum_should_match', иначе оно не будет работать. – Val
Sure .......... (y) – LMK