Cloud Datastore Client - Class AggregationQuery (1.25.0)

Reference documentation and code samples for the Cloud Datastore Client class AggregationQuery.

Represents an Aggregation Query .

Example:

 use Google\Cloud\Datastore\DatastoreClient;
use Google\Cloud\Datastore\Query\Aggregation;

$datastore = new DatastoreClient();

$query = $datastore->query();
$query->kind('Companies');
$query->filter('companyName', '=', 'Google');
$aggregationQuery = $query->aggregation(Aggregation::count()->alias('total'));

$res = $datastore->runAggregationQuery($aggregationQuery);
echo $res->get('total'); 

Example (aggregated using over method):

 use Google\Cloud\Datastore\DatastoreClient;
use Google\Cloud\Datastore\Query\Aggregation;

$datastore = new DatastoreClient();

$query = $datastore->query();
$query->kind('Companies');
$query->filter('companyName', '=', 'Google');
$query->limit(100);
$aggregationQuery = $datastore->aggregationQuery();
$aggregationQuery->over($query)->addAggregation(Aggregation::count()->alias('total_upto_100'));

$res = $datastore->runAggregationQuery($aggregationQuery);
echo $res->get('total_upto_100'); 

Namespace

Google \ Cloud \ Datastore \ Query

Methods

__construct

Create an aggregation query.

Parameters
Name
Description
query
Google\Cloud\Datastore\Query\QueryInterface |null
aggregates
mixed

addAggregation

Adds a Query Aggregation.

Accepts an array of properties for aggregation.

Example:

 $query = $datastore->AggregationQuery();
$query->kind('Companies');
$query->filter('companyName', '=', 'Google');
$query->addAggregation(Aggregation::count()->alias('total'));
echo json_encode($query->queryObject()); 
Parameter
Name
Description
aggregation
Google\Cloud\Datastore\Query\Aggregation

The Aggregation to be included.

over

Set the Query Projection.

Accepts an array of properties. If set, only these properties will be returned.

Example:

 $query = $datastore->query();
$query->kind('Companies');
$query->filter('companyName', '=', 'Google');

$pipeline = $datastore->AggregationQuery()
    ->over($query)
    ->addAggregation(Aggregation::count()->alias('total')); 
Parameter
Name
Description
query
Google\Cloud\Datastore\Query\QueryInterface

The query whose properties to include.

queryObject

Format the query for use in the API.

Returns
Type
Description
array
Create a Mobile Website
View Site in Mobile | Classic
Share by: