ElasticSearch stored_fields java API

时间:2017-07-19 07:00:11

标签: java elasticsearch lucene

我正在尝试使用java API构建ElasticSearch查询。此查询使用stored_fields,任何人都可以帮助我如何从java代码构建stored_field查询。

{
  "from": 0,
  "size": 10,
  "stored_fields": [
    "f1",
    "f2",
    "f3",
    "f4"
  ],
  "query": {
    "bool": {
      "must": {
        "match": {
          "compositeField1": {
            "query": "test123",
            "type": "boolean",
            "operator": "AND"
          }
        }
      }
  },
  "sort": [
    {
      "_score": {}
    }
  ]
}

1 个答案:

答案 0 :(得分:1)

以下代码

    SearchRequestBuilder srb = ....
    srb.setFrom(0).setSize(10).storedFields("f1", "f2", "f3", "f4");
    srb.addSort(SortBuilders.scoreSort());

    BoolQueryBuilder bqb = new BoolQueryBuilder();
    bqb.must(QueryBuilders.matchQuery("compositeField1", "test123")
            .operator(Operator.AND).type(MatchQuery.Type.BOOLEAN));
    srb.setQuery(bqb);

注意:ES设置了一些默认的必需参数。

相关问题