我有一个示例购物应用,我想使用elasticsearch创建搜索页面,当用户搜索特定产品时,例如" Iphone"然后显示所有iphone产品。 但是,我想在搜索结果之上推广产品。它更像是推广产品,当我宣传特定产品时,它会显示在搜索结果的顶部。
如何通过elasticsearch实现这一目标?
答案 0 :(得分:0)
在Elasticsearch中有许多关于如何实现这一目标的文档,因为它是搜索者的典型需求。 我建议你尝试自己提升相关功能。
像:
{
"query": {
"function_score": {
"filter": {
"term": { "content": "mobile" }
},
"functions": [
{
"filter": { "term": { "brand": "Apple" }},
"weight": 4
}
],
"score_mode": "sum",
}
}
}
此处的文档是最新的:FunctionScoring
同样作为提示,可能绝对值得一看Relevance chapter并了解ES如何尝试按相关性排序结果。