Generate_series. Функции, возвращающие множества в postgresql

В postgres есть замечательная функция generate_series. Необходима данная функция, для возврата множества значений, заданных в функции.

Синтаксис:

generate_series(start, stop, [step])

С помощью, данной функции можно генерировать множество строк дат (timestamp, timestamp with time zone) или чисел(int, bigint, numeric).

Рассмотрим пример, создания ряда чисел с помощью generate_series:

Результат:

generate_series
3
4
5
6
7

Пример ряда чисел, с шагом с помощью genereate_series:

Результат:

generate_series
10
8
6
4
2

Пример запроса, возвращающий множество строк с типом дата, с указаным шагом (1 месяц):

Результат:

generate_series
2017-01-01 00:00:00
2017-02-01 00:00:00
2017-03-01 00:00:00
2017-04-01 00:00:00
2017-05-01 00:00:00
2017-06-01 00:00:00
2017-07-01 00:00:00
2017-08-01 00:00:00
2017-09-01 00:00:00
2017-10-01 00:00:00
2017-11-01 00:00:00 
2017-12-01 00:00:00

Если вам помогла статья, пожалуйста перейдите по одному из рекламных блоков, расположенных на сайте. Таким образом вы поддержите проект. Спасибо

© Krenar 2020. All right reserved.