Предположим, что я хотел написать в SQL функцию с табличным значением, которая возвращает таблицу с первым днем каждого месяца между датами аргумента. Каков самый простой способ сделать это?
Например, fnFirstOfMonths ('10/31/10', '2/17/11')
вернет таблицу с одним столбцом с 11/1/10, 12/1 / 10, 1/1/11
и 2/1/11
в качестве элементов.
Мой первый инстинкт - просто использовать цикл while и многократно вставлять первые дни месяцев, пока я не доберусь до даты начала. Похоже, что должен быть более элегантный способ сделать это.
Спасибо за любую помощь, которую вы можете оказать.