在Elasticsearch中,我有五个文档。它们具有名称和颜色:
我想通过名称进行搜索,并在查找结果的范围内进行搜索,我想按颜色过滤:
{
"query": {
"bool": {
"should": [
{
"match": {
"name": {
"query":"Car"
}
}
}
],
"filter": {
"term": {
"colors": "red"
}
}
}
}
}
但是此查询返回我Car 2
和Bike 2
,因为它们是彩色的。我知道为什么(过滤器决定基于颜色将其包括在内),但不知道如何写出将包含的内容基于匹配项,并且在那些匹配的结果中,我想过滤出没有正确颜色的那些。< / p>
谢谢