create temp table temp_table(work_type varchar(20), count int);
insert into temp_table
(
work_type,
count
)
select work_type,
count(work_type)
from works
where number=num
and date_in between date1 and date2
group by work_type;
CREATE PROCEDURE spisok_rabot (num INT, date1 DATE, date2 DATE)
LANGUAGE plpgsql
AS $$
DECLARE
work_type VARCHAR(20);
BEGIN
work_type := '111111111';
END;
$$
Я так рассуждаю:
Есть n вершин и каждая из них связана с остальными - полносвязный граф.
Чтобы образовался цикл нужно минимум 3 вершины.
Значит для n вершин есть вот такое количество неповторяющихся циклов:
C(n,3)+C(n,4)+..+C(n,n), где C(n, k) - это количество сочетаний из n по k.
В данном случае сочетания по вершинам.
Т.е. для n = 5 например получаем
С(5,3) = 10
С(5,4) = 5
C(5,5) = 1
Общее = 10+5+1 = 16 циклов, при этом 5^5= 3125, т.е. намного больше.
Что я не учитываю?