У меня есть таблица с названием Position, в этой таблице у меня есть следующие даты, включающие (гггг-мм-дд), ниже приведено упрощенное представление дат занятости
id, person_id, start_date, end_date , title
1 , 1 , 2001-12-01, 2002-01-31, 'admin'
2 , 1 , 2002-02-11, 2002-03-31, 'admin'
3 , 1 , 2002-02-15, 2002-05-31, 'sales'
4 , 1 , 2002-06-15, 2002-12-31, 'ops'
Я хотел бы иметь возможность рассчитать разрывы в занятости, предполагая, что некоторые даты перекрываются, чтобы получить следующий результат для человека с id = 1
person_id, start_date, end_date , last_position_id, gap_in_days
1 , 2002-02-01, 2002-02-10, 1 , 10
1 , 2002-06-01, 2002-06-14, 3 , 14
Я посмотрел на многочисленные решения, СОЮЗЫ, Материализованные представления, таблицы с сгенерированными календарными диапазонами дат и т. Д. Я действительно не уверен, каков наилучший способ сделать это. Есть ли один запрос, где я могу это сделать?