elasticsearch,query-string,string-matching,Sql,elasticsearch,Query String,String Matching" /> elasticsearch,query-string,string-matching,Sql,elasticsearch,Query String,String Matching" />

Sql Elasticsearch,查询字符串,需要匹配字符串

Sql Elasticsearch,查询字符串,需要匹配字符串,sql,elasticsearch,query-string,string-matching,Sql,elasticsearch,Query String,String Matching,对不起,如果这个问题是重复的。因为我找不到任何解决办法。再次抱歉,因为我英语不好 我正在尝试使用查询字符串对Elasticsearch进行查询: { query_string: { fields: ["name^10"], query: q } } 当我搜索关键字:coffee=>时,数据将响应。但是当我用关键字搜索时:coffe=>没有响应 我想将coffe与数据库中的coffe匹配。我该怎么做 谢谢你的帮助 我建议您只需在用户键入的内容后面添

对不起,如果这个问题是重复的。因为我找不到任何解决办法。再次抱歉,因为我英语不好

我正在尝试使用查询字符串对Elasticsearch进行查询:

{
    query_string: {
        fields: ["name^10"],
        query: q
    }
}
当我搜索关键字:
coffee
=>时,数据将响应。但是当我用关键字搜索时:
coffe
=>没有响应

我想将
coffe
与数据库中的
coffe
匹配。我该怎么做


谢谢你的帮助

我建议您只需在用户键入的内容后面添加一个星号
*
,如下所示,这应该可以满足您的需要:

{
    query_string: {
        fields: ["name^10"],
        query: q + "*"
    }
}

搜索
coffe*
,你会找到你想要的want@Val不,我的想法是允许用户搜索:
coffe
查找
coffe
。好的,但是无论在创建查询时做什么,都可以添加星号。用户类型为
coffe
,但您可以搜索
coffe*