Как суммировать время активности, которое произошло в течение 15-минутных интервалов, используя перекрывающиеся времена запуска и остановки (SQL) (t-SQL)

Я хотел бы написать запрос, который будет вычислять общий объем активности, произошедшей в течение каждого 15-минутного интервала дня, используя только метки времени, которые соответствуют времени начала и окончания активности.

Вот пример набора данных:

    DATE    StartDateTime   StopDateTime
2/2/2015    2/2/2015 7:00   2/2/2015 7:25
2/2/2015    2/2/2015 7:20   2/2/2015 7:29
2/2/2015    2/2/2015 7:35   2/2/2015 7:42
2/2/2015    2/2/2015 8:05   2/2/2015 8:14
2/2/2015    2/2/2015 8:16   2/2/2015 8:20
2/2/2015    2/2/2015 8:29   2/2/2015 8:40
2/2/2015    2/2/2015 8:55   2/2/2015 9:25

И вот что я хотел бы получить:

    DATE    Interval       activityTime(min)
2/2/2015    2/2/2015 7:00   15
2/2/2015    2/2/2015 7:15   19
2/2/2015    2/2/2015 7:30   7
2/2/2015    2/2/2015 7:45   0
2/2/2015    2/2/2015 8:00   9
2/2/2015    2/2/2015 8:15   5
2/2/2015    2/2/2015 8:30   10
2/2/2015    2/2/2015 8:45   5
2/2/2015    2/2/2015 9:00   15
2/2/2015    2/2/2015 9:15   10

Я искал способ организовать данные так, как мне нужно, и это самое близкое, что мне удалось найти до сих пор, хотя я не смог заставить его работать:

Разбиение времени + длительности на интервалы в т-квл

Я довольно новичок в SQL, поэтому любые объяснения решений будут высоко оценены. Это также моя первая публикация на stackoverflow, поэтому, пожалуйста, дайте мне знать, если данные не в предпочтительном формате или есть какие-либо дополнительные вопросы. Спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос