|
Как в запросе получить дату между 2-мя строками
| ☑ |
0
location
naïve
05.03.19
✎
13:56
|
Добрый день, подскажите пож-та как запросом получить следующие.
Запрос, выдает следующие данные
Операция1 ДатаНачала-01.01.19 ДатаКонца-02.01.19
Операция2 ДатаНачала-04.01.19 ДатаКонца-05.01.19
Операция3 ДатаНачала-05.01.19 ДатаКонца-06.01.19
Например первое условие необходимо посчитать разницу между датой начала и окончания и получить количество дней не составляет труда.
А вот посчитать по условию ДатаНачала следующей опереации минус ДатаКонца текущейоперации вот тут уже я не знаю, как посчитать подскажите.
Должно получить так
Операция1 ДатаНачала-01.01.19 ДатаКонца-02.01.19 РазницаМеждуОперациями - 0 (нет данных предыдущей операции)
Операция2 ДатаНачала-04.01.19 ДатаКонца-05.01.19 РазницаМеждуОперациями - 2 дня (04.01.19 - 02.01.19)
Операция3 ДатаНачала-05.01.19 ДатаКонца-06.01.19 РазницаМеждуОперациями - 0 (05.01.19 операция 3 - 05.01.19 операция 2)
|
|
1
catena
05.03.19
✎
13:58
|
Соединить с собой, найти максимальный меньший период, посчитать разницу
|
|
2
Gantosha
05.03.19
✎
14:00
|
Если данных не много, то не сложно. В лоб делать полное соединение , далее считать по нему минимальную границу начала которая больше даты конца - но на нескольких сотнях тысяч операций подавится.
Можно просто упорядочить и в цикле)
|
|
3
Simod
05.03.19
✎
14:43
|
Можно через коррелированный запрос.
|
|
4
location
naïve
05.03.19
✎
14:46
|
всем спс попробую что то прикрутить.
|
|