Хранятся у меня в таком формате продукты в Эластике
{
"_index": "market",
"_type": "products",
"_id": "4",
"_score": 0.5619608,
"_source": {
"id": 4,
"title": "Zora",
"category_id": 3,
"price": "35000.00",
"characteristicValue": [
{
"id": 1,
"name": "Красный",
"characteristic": {
"id": 2,
"name": "color"
}
}
]
}
}
Мне надо сделать фильтрацию по свойствам продукта.
В частности рассматриваю по одному фильтру
"query": {
"bool": {
"must": [
{"match": {
"characteristicValue.characteristic.name": "color"
}}
],
"should": [
{"terms": {
"characteristicValue.name": [
"красный",
"синий"
]
}}
]
}
}
В данном запросе вываливаются все, у кого есть свойство цвет, но цвета у них не (красный или зеленый). Как исправить запрос?