У меня есть следующий код, который я запускаю на SQL Server - он возвращает таблицу квартальных дат в последний день месяца, начиная с определяемой пользователем первой даты. Мне нужно реализовать код в Netezza SQL:Рекурсивный CTE дат Netezza SQL
DECLARE @YEAR INT= 2014 /*year of first date*/
DECLARE @MONTH INT = 6 /*month of first date*/
DECLARE @DAY INT = 30 /*day of first date*/
;WITH MONTHS (DATES) AS
(select DATEFROMPARTS(@year,@month,@day)
union all
SELECT cast(DATEADD(dd,-1,DATEADD(mm, DATEDIFF(m,0,dateadd(month,3,dates))+1,0)) as date)
FROM MONTHS
WHERE DATES < dateadd(month,12,datefromparts(@year,@month,@day))
)
SELECT * FROM MONTHS
У меня возникли проблемы, пытаясь выяснить, как перевести это в Netezza SQL. Выход образца кода будет выглядеть так:
> DATES
> 2014-06-30
> 2014-09-30
> 2014-12-31
> 2015-03-31
> 2015-06-30
Добавление образца вывода было бы полезно – ScottMcG
только что отредактировано, чтобы добавить выходной образец. Спасибо за предложение @ScottMcG! – crayfishcray