簡體   English   中英

帶有匹配詞組(精確搜索)子句的Elasticsearch Java API Boost查詢

[英]Elasticsearch Java API Boost query with Match Phrase (Exact Search) Clause

我的最終目標是對輸入的短語進行精確搜索(例如:測試類型搜索),如果說出准確的短語與我要查找的列匹配,則提高結果。

我正在為此使用Elasticsearch Java API。 請找到以下代碼,

QueryBuilder queryBuilder = QueryBuilders.matchPhraseQuery("_all", "Test Type Search");

SearchResponse response = client.prepareSearch("index_name")
                        .setQuery(queryBuilder)
                        .setFrom(1)
                        .setSize(10)
                        .execute()
                        .actionGet();

我想知道如何在包含此確切值的索引中增強字段。

上面的響應還返回具有以下值的響應:“測試代碼用於此搜索類型”,而並非完全是“測試類型搜索”。 我該如何糾正?

有什么方法可以找到正確的Elasticsearch Java API文檔(2.0.0)?

從您的問題看來,您只想匹配整個術語(值),即“測試類型搜索”。
為此,您可以使用QueryBuilders.termQuery(field,value) ,對於匹配術語,請使用QueryBuilders.matchQuery(field,value)
其中field:您要查詢的文檔字段value:您要完全匹配的內容。

請參閱ES Doc
請參閱ES Java API 文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM