You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (Jira)" <ji...@apache.org> on 2019/09/14 07:24:00 UTC
[jira] [Commented] (CALCITE-3345) Implement time_bucket function
[ https://issues.apache.org/jira/browse/CALCITE-3345?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16929709#comment-16929709 ]
Julian Hyde commented on CALCITE-3345:
--------------------------------------
Have you considered [HOP_START|https://calcite.apache.org/docs/reference.html#grouped-window-functions]? We already have it, it deals with ends of windows, and it uses standard interval values rather than integers or strings.
> Implement time_bucket function
> ------------------------------
>
> Key: CALCITE-3345
> URL: https://issues.apache.org/jira/browse/CALCITE-3345
> Project: Calcite
> Issue Type: New Feature
> Reporter: Julian Feinauer
> Priority: Major
>
> See here for information on the `time_bucket` function: https://docs.timescale.com/latest/api#time_bucket
> This is a more powerful version of the standard PostgreSQL date_trunc function. It allows for arbitrary time intervals instead of the second, minute, hour, etc. provided by date_trunc. The return value is the bucket's start time.
> This would especially help with time averaging but keeps everything SQL compliant. E.g. queries like
> Example query from (https://www.timescale.com/):
> {code:sql}
> SELECT time_bucket('10 seconds', time) AS ten_second,
> machine_id, avg(temperature) AS "avgT",
> min(temperature) AS "minT", max(temperature) AS "maxT",
> last(temperature, time) AS "lastT"
> FROM measurements
> WHERE machine_id = 'C931baF7'
> AND time > now() - interval '150s'
> GROUP BY ten_second
> ORDER BY ten_second DESC;
> {code}
--
This message was sent by Atlassian Jira
(v8.3.2#803003)