类似于我问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')
任何指针将不胜感激。
答案 0 :(得分:1)
您在寻找这个吗?
where t.datecol between last_day(current_date - interval '36 month') + interval '1 day' and
last_day(current_date - interval '1 month')