Code owners
Assign users and groups as approvers for specific file changes. Learn more.
DateHistogram.md 1.63 KiB
Date Histogram Aggregation
More info about histogram aggregation is in the official elasticsearch docs
A multi-bucket aggregation similar to the histogram except it can only be applied on date values.
Example of expressions for interval: year
, quarter
, month
, week
, day
, hour
, minute
, second
Simple example
{
"aggregations": {
"articles_over_time" : {
"date_histogram" : {
"field" : "date",
"interval" : "month"
}
}
}
}
And now the query via DSL:
$dateHistogramAggregation = new DateHistogramAggregation('articles_over_time', 'date', 'month');
$search = new Search();
$search->addAggregation($dateHistogramAggregation);
$queryArray = $search->toArray();
Adding parameters example
Additional parameters can be added to the aggregation. In the following example we will demonstrate how to provide a custom format to the results of the query:
{
"aggregations": {
"articles_over_time" : {
"date_histogram" : {
"field" : "date",
"interval" : "1M",
"format" : "yyyy-MM-dd"
}
}
}
}
And now the query via DSL:
$dateHistogramAggregation = new DateHistogramAggregation('articles_over_time', 'date', 'month');
$dateHistogramAggregation->addParameter('format', 'yyyy-MM-dd');
$search = new Search();
$search->addAggregation($dateHistogramAggregation);
$queryArray = $search->toArray();