elasticsearch 多字段弹性搜索短语前缀查询
我是ES新手,我正在尝试构建一个查询,该查询将对多个字段使用短语前缀,这样我就不必搜索多次 以下是到目前为止我得到的信息:
elasticsearch 多字段弹性搜索短语前缀查询,
elasticsearch,match,field,
elasticsearch,Match,Field,我是ES新手,我正在尝试构建一个查询,该查询将对多个字段使用短语前缀,这样我就不必搜索多次 以下是到目前为止我得到的信息: { "query" : { "text" : { "first_name" : { "query" : "Gustavo", "type" : "phrase_prefix" } } } }' 是否有
{
"query" : {
"text" : {
"first_name" : {
"query" : "Gustavo",
"type" : "phrase_prefix"
}
}
}
}'
是否有人知道如何搜索多个字段,比如“姓氏”?您正在使用的字段不久前已被弃用(实际上已重命名),取而代之的是。匹配查询支持单个字段,但您可以使用支持相同选项并允许搜索多个字段的。以下是一个对您有帮助的示例:
{
"query" : {
"multi_match" : {
"fields" : ["title", "subtitle"],
"query" : "trying out ela",
"type" : "phrase_prefix"
}
}
}
您可以通过如下方式使用Java API实现相同的功能:
QueryBuilders.multiMatchQuery("trying out ela", "title", "subtitle")
.type(MatchQueryBuilder.Type.PHRASE_PREFIX);
令人惊叹的!非常感谢你!顺便问一下,您知道如何用Java实现这一点吗?我在文件里找不到,java.lang.String…)谢谢,工作得很好!对我来说,使用/add
“fields”:[“*”],“lenient”:true
,这样可以搜索所有字段,并且当字段列表中(隐式)包含数字字段时,文本输入不会导致异常。上面没有给我短语前缀I don'tthink@mgaert谢谢,你的建议奏效了。也许它应该独立运行(anwser:)