Немного сложно точно понять, что вы хотите, но из запрошенного вывода похоже, что массив содержит месячные даты между двумя пределами дат. Я пытался реализовать с помощью JavaScript, чтобы избежать страшной ошибки «Неподдерживаемый подзапрос», но сложно вычислить даты, отформатировать их и вернуться из JavaScript в SQL.
Поэтому я получил SQL UDF:
CREATE OR REPLACE FUNCTION ARRAY_MONTHS_BETWEEN("FROM" DATE, "TO" DATE)
RETURNS ARRAY AS
'
SELECT ARRAY_AGG(DATEADD(MONTH, "MONTH" , "FROM")) A
FROM (SELECT ROW_NUMBER() OVER (ORDER BY NULL) - 1 "MONTH"
FROM TABLE(GENERATOR(ROWCOUNT => 1000)))
WHERE "MONTH" <= CEIL(DATEDIFF(MONTHS, "FROM", "TO"))
';
Может быть сложно использовать эту функцию, кроме как с константами даты, потому что вы рискуете открыть ящик Пандоры со связанными со снежинками подзапросами. Но опять же, может быть, нет.