在具有单个必须/应该/must_not的查询中需要"bool"什么?



在Elasticsearch中,我可以使用布尔组合单是must/should,这有什么意义吗?

只有一个的例子必须bool作品

GET /logstash-2021.02.25/_search
{
"query":
{
"bool":
{
"must":
[{
"match": 
{
"level": "Error"
}
}]
}
}
}

在另一个没有"(因为只有一个必须)它不工作

GET /logstash-2021.02.25/_search
{
"query":
{
"must":
[{
"match": 
{
"level": "Error"
}
}]
}
}

ES DSL Query with bool means,查询匹配其他查询的布尔组合的文档。bool查询映射到Lucene的布尔查询的底层Elasticsearch层,这使得ES更加强大和令人愉快。它是使用一个或多个布尔子句构建的,每个子句都有一个类型的出现。

当涉及到复杂的过滤器组合时,弹性搜索bool查询是一种广泛使用的查询。此外,ElasticSearch能够实时运行所有复杂的查询,并找到最合适的结果,并在很短的时间内使用bool查询 返回给用户。

最新更新