gpt4 book ai didi

elasticsearch - 筛选不同的构面后,构面计数未显示正确的数字

转载 作者:行者123 更新时间:2023-12-03 02:08:31 25 4
gpt4 key购买 nike

如果您有两个构面(例如类别和标签),则最初的计数是正确的,但在对其中一个构面进行过滤后它们不会下降。这个想法是,如果类别X中没有标签为Y的记录,而我们按类别X进行过滤,则标签Y的构面计数应为0。

当然,同一术语(其他类别)中的其他构面计数不会减少,因为它们将是“或”而不是“与”。

最佳答案

您如何过滤方面?像这样?

GET /_search
{
"query": {.....},
"filter": { "term": { "some_field": "some_value"}},
"facets: {.....}
}

如果是这样,那就不足为奇了。顶级 filter参数用于在计算了构面之后过滤搜索结果。实际上,正是由于这种混淆,在1.0中将其重命名为 post_filter

您想使用 filtered查询代替:
GET /_search
{
"query": {
"filtered": {
"query": {.....},
"filter": { "term": { "some_field": "some_value"}}
}
},
"facets: {.....}
}

关于elasticsearch - 筛选不同的构面后,构面计数未显示正确的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21340870/

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