Netezza日期滚动列表

时间:2018-10-10 09:17:51

标签: sql netezza

类似于我问here但与Sybase SQL有关的问题,我希望获取我的where子句的日期列表以过滤Netezza中的表。

当前,每次使用手动日期运行查询时,我的where子句都需要更新,我希望将其自动化以使用最近36个月的数据,但要从上个月的月末开始。因此,如果今天是2018年10月10日,我希望可以追溯到2018年9月30日的36个月。

我当前的Netezza where子句如下:

WHERE

    table.DateCol BETWEEN '2015-10-01' AND '2018-09-30'

我已经找到了一些示例here,它们涉及提取月份的最后一天和第一天,但​​我不知道如何将它们连接在一起以使用“ BETWEEN”和“ AND”获得日期列表'

--last_day(now() - interval'36 month') + interval '1 day'  
--last_day(now() - interval'1 month')

任何指针将不胜感激。

1 个答案:

答案 0 :(得分:1)

您在寻找这个吗?

where t.datecol between last_day(current_date - interval '36 month') + interval '1 day' and
                        last_day(current_date - interval '1 month')