стол:подсчета дней с пробелами
+-----------+--------------+------------+------------+ | RequestID | RequestStaus | StartDate | EndDate | +-----------+--------------+------------+------------+ | 1 | pending | 9/1/2015 | 10/2/2015 | | 1 | in progress | 10/2/2015 | 10/20/2015 | | 1 | completed | 10/20/2015 | 11/3/2015 | | 1 | reopened | 11/3/2015 | null | | 2 | pending | 9/5/2015 | 9/7/2015 | | 2 | in progress | 9/7/2015 | 9/25/2015 | | 2 | completed | 9/25/2015 | 10/7/2015 | | 2 | reopened | 10/10/2015 | 10/16/2015 | | 2 | completed | 10/16/2015 | null | +-----------+--------------+------------+------------+
Я хотел бы, чтобы вычислить дни открытых, но не включает дни между завершен и вновь. Например, RequestID 1, открытые дни будут (11/3/2015 - 9/1/2015) + (GetDate() - 11/3/2015), для запроса 2, общее количество дней будет (10/7/2015 - 9/5/2015) + (10/16/2015 - 10/10/2015).
В результате я хочу будет что-то вроде:
+-----------+-------------------------------+ | RequestID | DaysOpened | +-----------+-------------------------------+ | 1 | 63 + (getdate() - 11/3/2015) | | 2 | 38 | +-----------+-------------------------------+
Как подойти к этой проблеме? Спасибо!
Вы никогда не закончить свой пример - какой результат вы ожидаете для идентификатора 1 и 2? – Hogan
По вашему запросу, для RequestID 1, datys должен быть (11/3/2015 - 9/1/2015) + (GetDate() - 11/3/2015). Не так ли? –
@ Танцуй-Генри, да, сэр! – Meidi