Package com.google.cloud.datastore
Class AggregationQuery
- All Implemented Interfaces:
Serializable
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:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static enum
Nested classes/interfaces inherited from class com.google.cloud.datastore.Query
Query.ResultType<V>
-
Method Summary
Modifier and TypeMethodDescriptionReturns theAggregation
(s) for this Query.getMode()
Returns theAggregationQuery.Mode
for this query.GqlQuery<?>
Returns the underlyingfor this Query
.Returns the underlyingfor this Query
.Methods inherited from class com.google.cloud.datastore.Query
getNamespace, newAggregationQueryBuilder, newEntityQueryBuilder, newGqlQueryBuilder, newGqlQueryBuilder, newKeyQueryBuilder, newProjectionEntityQueryBuilder
-
Method Details
-
getAggregations
Returns theAggregation
(s) for this Query. -
getNestedStructuredQuery
Returns the underlyingfor this Query
. Returns null if created withGqlQuery
-
getNestedGqlQuery
Returns the underlyingfor this Query
. Returns null if created withStructuredQuery
-
getMode
Returns theAggregationQuery.Mode
for this query.
-