Skip to content

Instantly share code, notes, and snippets.

@geneqew
Created April 5, 2016 10:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save geneqew/ff282c0b7057703223ebaa70976f0649 to your computer and use it in GitHub Desktop.
Save geneqew/ff282c0b7057703223ebaa70976f0649 to your computer and use it in GitHub Desktop.
QueryBuilder query = QueryBuilders.boolQuery().filter(QueryBuilders.termQuery("username", username))
.filter(QueryBuilders.rangeQuery("transactionDateTime").from(startDateTime).to(endDateTime));
TermsBuilder withUsername = AggregationBuilders.terms("username").field("username");
TermsBuilder withCurrency = AggregationBuilders.terms("currency").field("currency");
SumBuilder withTotalAmount = AggregationBuilders.sum("totalAmount").field("amount");
SearchResponse response = getClient().prepareSearch(getIndex()).setSearchType(SearchType.DFS_QUERY_THEN_FETCH)
.setTypes(getType()).setSize(0).setQuery(query).addAggregation(withUsername)
.addAggregation(withCurrency).addAggregation(withTotalAmount).execute().actionGet();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment