Details
-
New Feature
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
When analyzing time based data, you will often have to aggregate by time grains. While some time grains will be easy to calculate, others, such as quarter, can be quite difficult. These functions enable a user to quickly and easily aggregate data by various units of time. Usage is as follows:
SELECT <fields> FROM <data> GROUP BY nearestDate(<timestamp_column>, <time increment>
So let's say that a user wanted to count the number of hits on a web server per 15 minute, the query might look like this:
SELECT nearestDate(`eventDate`, '15MINUTE' ) AS eventDate, COUNT(*) AS hitCount FROM dfs.`log.httpd` GROUP BY nearestDate(`eventDate`, '15MINUTE')
Currently supports the following time units:
- YEAR
- QUARTER
- MONTH
- WEEK_SUNDAY
- WEEK_MONDAY
- DAY
- HOUR
- HALF_HOUR / 30MIN
- QUARTER_HOUR / 15MIN
- MINUTE
- 30SECOND
- 15SECOND
- SECOND