gpt4 book ai didi

elasticsearch - 在 ElasticSearch 查询中结合 must_not

转载 作者:行者123 更新时间:2023-11-29 02:45:23 26 4
gpt4 key购买 nike

我目前正在努力处理 ElastSearch 查询,该查询目前看起来如下:

...
"query": {
"bool": {
"must_not": [
{
"term": {
"bool-facet.criteria1": {
"value": false
}
}
},
{
"term": {
"bool-facet.criteria2": {
"value": false
}
}
}
]
}
}
...

所以现在当 criteria1 或 criteria2 匹配时,文档将被忽略。查询必须如何才能仅忽略匹配 criteria1 和 criteria2 的文档?

最佳答案

如果你想要简单的 AND 行为,那么只需在其中嵌套另一个 bool 查询:

"query": {
"bool": {
"must_not": [
{
"bool": {
"filter": [
{
"term": {
"bool-facet.criteria1": false
}
},
{
"term": {
"bool-facet.criteria2": false
}
}
]
}
}
]
}
}

请注意,通过使用 filter(因为这是一个不需要评分的是/否问题,但如果您想要评分,那么您将使用 must 而不是 filter) 您将获得所需的 AND 行为。这会将问题更改为“不(任何具有 criteria1 == false AND criteria2 == false 的文档)”。

关于elasticsearch - 在 ElasticSearch 查询中结合 must_not,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38640784/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com