簡體   English   中英

有沒有辦法使用 elasticsearch java api 使用多重前綴?

[英]is there way to use multiprefix using elasticsearch java api?

使用QueryBuilders.prefixQuery我試圖獲取以“L”“J”開頭的書名列表有什么辦法可以實現嗎? 我知道 QueryBuilders.prefixQuery 只能接受像boolQueryBuilder.must(QueryBuilders.prefixQuery("bookTitle", "L"));這樣的字符串。 有沒有其他簡單的方法來實現這一目標?

您可以使用 boolean 子句should並結合兩個前綴查詢,一個用於L ,一個用於J ,這將提供您預期的搜索結果,這意味着書籍從LJ開始。

在 java 代碼中,它將如下所示:

        BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder();
        PrefixQueryBuilder lPrefixQueryBuilder = new PrefixQueryBuilder("title","L");
        PrefixQueryBuilder jPrefixQueryBuilder = new PrefixQueryBuilder("title","J");
        boolQueryBuilder.should(lPrefixQueryBuilder);
        boolQueryBuilder.should(jPrefixQueryBuilder);

暫無
暫無

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

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