gpt4 book ai didi

elasticsearch - Elasticsearch多个前缀查询或匹配

转载 作者:行者123 更新时间:2023-12-03 01:36:19 26 4
gpt4 key购买 nike

我想完成以下任务(表示为等效的SQL查询)

WHERE field1 LIKE 'FOO%' OR field2 LIKE 'FOO%'

但是说 boost field2(即,如果文档仅是两个字段中的一个),则匹配field2的文档将被提升

如何在Elasticsearch中完成此任务?我无休止地浏览了文档,只是变得越来越困惑

我试过了:
POST securities/_search
{
"query": {
"bool": {
"minimum_should_match": 1,
"should": [
{
"match_phrase_prefix": {
"field2": "FOO"
}
},
{
"match_phrase_prefix": {
"field2": "FOO"
}
}
]
}
}
}

但是我无法从 bool.should [*]。match_phrase_prefix 中指定增强

我看到有一个 boost 属性,可以在 bool 级别上指定,但是我不确定如何应用

最佳答案

为了使其正常工作,您应该更改此设置:

"match_phrase_prefix": {
"field2": "FOO"
}

对此:
"match_phrase_prefix": {
"field2": {
"value": "FOO",
"boost": 2.0
}
}

这应该是增强的正确语法。

关于elasticsearch - Elasticsearch多个前缀查询或匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52316492/

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