gpt4 book ai didi

elasticsearch - 嵌套面计数错误

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

我正在搜索产品和变体。一种产品可以具有许多嵌套变体。示例:一件T恤有2种变体,白色的售价为50欧元,绿色的售价为60欧元。它仍然是同一产品,应在结果页面上显示一次。

这是我的映射:

{"product" => { "properties" => {"vendor_variants" => {"type" => "nested"}}}}

这是我正在做的查询:
"query" => {
"filtered" => {
"query" => {
"match_all" => {}
},
"filter" => {
"bool" => {
"must" => [
{
"terms" => {
"categories" => [122]
}
}
]
}
}
}
},
"facets" => {
"brand" => { "terms" => {"field" => "filter_brand"} },
"price_range" => {
"nested" => "vendor_variants",
"range" => { "field" => "price", "ranges" => [ {"to" => 2000}, {"from" => 2000, "to" => 5000} ]
}
}
}

该查询产生172个结果。但是价格范围的方面是完全错误的。例如,它返回的结果是20到50欧元的范围内有422个结果。我相信这是因为它计算每个嵌套的vendor_variants文档。但这不是我所需要的,我只需要计算主要产品文档即可。

我的查询出了什么问题?

最佳答案

弄清楚了。在映射嵌套文档时,我必须添加"include_in_parent" => true

关于elasticsearch - 嵌套面计数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19211245/

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