簡體   English   中英

在Java中動態構建Elasticsearch Bool查詢

[英]build elasticsearch bool query in java dynamically

有什么方法可以動態構建elasticsearch bool查詢。 在我的應用程序中,用戶可能一次使用多個過濾器。 就像他可能在一個請求中使用2個過濾器,在另一個請求中使用3個過濾器。我將該過濾器詳細信息存儲在哈希圖中。 因此,根據用戶請求,查詢應通過添加過濾器進行更改。

BoolQueryBuilder query = QueryBuilders.boolQuery()
                    .must(QueryBuilders.matchQuery("client_code",
                            "SSSS")); 

您可以遍歷哈希映射鍵/值,並針對將發現的每個鍵/值對相應地構建bool查詢:

BoolQueryBuilder query = QueryBuilders.boolQuery();
for (String key : hashmap.keySet()) {
    query.must(QueryBuilders.matchQuery(key, hashmap.get(key)));
}

暫無
暫無

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

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