Как суммировать время активности, которое произошло в течение 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, поэтому, пожалуйста, дайте мне знать, если данные не в предпочтительном формате или есть какие-либо дополнительные вопросы. Спасибо!