如何使用slice_time“1周”创建Vertica时间序列,从特定的一周开始?

时间:2014-11-25 14:12:33

标签: time-series vertica

我选择了这样:

SELECT slice_time, TS_LAST_VALUE(x) FROM table \ 
 TIMESERIES slice_time as '1 week' OVER (partition by acc_id order by updated_at)

我遇到的问题是我的第一个" updated_at"是在2013-02-20(周三),但时间序列查询给了我2013-02-16(周六)的第一个记录。我注意到,对于任何日期,它总是在实际日期之前的星期六产生时间序列中的第一条记录。

有没有办法让它在不同的日子开始?

感谢。

1 个答案:

答案 0 :(得分:0)

我自己遇到了同样的问题。以下是我能够自定义开始日期的方式,其中10/01是随机日系列的开头:

select
    ts + datediff('dd', min(ts) over(), '2015/10/01') week_start
from
    (
    select
        ts
    from (
        select
            timestamp_trunc('2015/10/01','dd') tm
        union
        select
            timestamp_trunc('2015/10/28','dd') tm
       ) as ts
    timeseries ts as '1 Week' OVER (order by tm)
    )a