elasticsearch 弹性搜索设置单个搜索的字段权重
我对弹性搜索非常陌生,比如在我的文档中我有字段A、B、C、D,我想在所有字段中搜索单词“test” 我希望每个字段有不同的权重(即A有10,B有8,C有5,D有2)。如何编写es查询来对正在搜索的单词执行该操作。这是一个经典的用例。 最简单的方法是使用带有助推器的多匹配查询。 在多重匹配中,将^boostvalue添加到字段名以对其应用提升
elasticsearch 弹性搜索设置单个搜索的字段权重,
elasticsearch,
elasticsearch,我对弹性搜索非常陌生,比如在我的文档中我有字段A、B、C、D,我想在所有字段中搜索单词“test” 我希望每个字段有不同的权重(即A有10,B有8,C有5,D有2)。如何编写es查询来对正在搜索的单词执行该操作。这是一个经典的用例。 最简单的方法是使用带有助推器的多匹配查询。 在多重匹配中,将^boostvalue添加到字段名以对其应用提升 GET test/_search { "query": { "multi_match": {
GET test/_search
{
"query": {
"multi_match": {
"query": "test",
"fields": ["A^10", "B^5", "C^2"]
}
}
}
这是一个经典的用例。
最简单的方法是使用带有助推器的多匹配查询。
在多重匹配中,将^boostvalue添加到字段名以对其应用提升
GET test/_search
{
"query": {
"multi_match": {
"query": "test",
"fields": ["A^10", "B^5", "C^2"]
}
}
}