public class AggregationQuery extends Query<AggregationResults>An implementation of a Google Cloud Datastore Query that returns AggregationResults, It can be constructed by providing a nested query (StructuredQuery or GqlQuery) to run the aggregations on and a set of Aggregation.
StructuredQuery example:
 EntityQuery selectAllQuery = Query.newEntityQueryBuilder()
    .setKind("Task")
    .build();
 AggregationQuery aggregationQuery = Query.newAggregationQueryBuilder()
    .addAggregation(count().as("total_count"))
    .over(selectAllQuery)
    .build();
 AggregationResults aggregationResults = datastore.runAggregation(aggregationQuery);
 for (AggregationResult aggregationResult : aggregationResults) {
     System.out.println(aggregationResult.get("total_count"));
 }
 
GqlQuery example:
 GqlQuery selectAllGqlQuery = Query.newGqlQueryBuilder(
         "AGGREGATE COUNT(*) AS total_count, COUNT_UP_TO(100) AS count_upto_100 OVER(SELECT * FROM Task)"
     )
     .setAllowLiteral(true)
     .build();
 AggregationQuery aggregationQuery = Query.newAggregationQueryBuilder()
     .over(selectAllGqlQuery)
     .build();
 AggregationResults aggregationResults = datastore.runAggregation(aggregationQuery);
 for (AggregationResult aggregationResult : aggregationResults) {
   System.out.println(aggregationResult.get("total_count"));
   System.out.println(aggregationResult.get("count_upto_100"));
 }
 See Also: Datastore queries
Methods
getAggregations()
public Set<Aggregation> getAggregations()Returns the Aggregation(s) for this Query.
| Returns | |
|---|---|
| Type | Description | 
| Set<Aggregation> | |
getMode()
public AggregationQuery.Mode getMode()Returns the Mode for this query.
| Returns | |
|---|---|
| Type | Description | 
| AggregationQuery.Mode | |
getNestedGqlQuery()
public GqlQuery<?> getNestedGqlQuery()Returns the underlying for this Query. Returns null if created with StructuredQuery
| Returns | |
|---|---|
| Type | Description | 
| GqlQuery<?> | |
getNestedStructuredQuery()
public StructuredQuery<?> getNestedStructuredQuery()Returns the underlying for this Query. Returns null if created with GqlQuery
| Returns | |
|---|---|
| Type | Description | 
| StructuredQuery<?> | |