我是elasticsearch的新手,我想知道是否有一种方法可以在执行查询时包含或排除过滤器。这样,我只写一个查询,而不是多个查询。
是的,您可以在query
中使用filter
标记。比如:
"query": {
"bool": {
"filter": [
{ "term": { "color": "red" }},
{ "term": { "brand": "gucci" }}
]
}
}
但是你可能也想看看post filter。当你在query
内部和外部进行过滤时,可能会有性能上的差异。这个SO可能很方便。当涉及到结构化数据时,可以使用过滤器上下文。