Flattening intersecting timespans

前端 未结 7 1425
温柔的废话
温柔的废话 2020-12-14 19:56

I have lots of data with start and stop times for a given ID and I need to flatten all intersecting and adjacent timespans into one combined timespan. The sample data posted

相关标签:
7条回答
  • 2020-12-14 20:44

    To help answer the question, here is the sample data given in the question in a table variable like Hainstech used:

    declare @T1 table (d1 datetime, d2 datetime)
    
    insert @T1 (d1,d2)
    select           '02 June 2009 05:55:28','02 June 2009 09:58:27'
    union all select '02 June 2009 10:15:19','02 June 2009 13:58:24'
    union all select '02 June 2009 13:58:24','02 June 2009 13:58:43'
    union all select '03 June 2009 05:54:48','03 June 2009 10:00:13'
    union all select '03 June 2009 09:26:45','03 June 2009 09:59:40'
    union all select '03 June 2009 10:12:50','03 June 2009 10:27:25'
    union all select '03 June 2009 10:13:12','03 June 2009 11:14:56'
    union all select '03 June 2009 10:27:25','03 June 2009 10:27:31'
    union all select '03 June 2009 10:27:39','03 June 2009 13:53:38'
    union all select '03 June 2009 11:14:56','03 June 2009 11:15:03'
    union all select '03 June 2009 11:15:30','03 June 2009 14:02:14'
    union all select '03 June 2009 13:53:38','03 June 2009 13:53:43'
    union all select '03 June 2009 14:02:14','03 June 2009 14:02:31'
    union all select '04 June 2009 05:48:27','04 June 2009 09:58:59'
    union all select '04 June 2009 06:00:00','04 June 2009 09:59:07'
    union all select '04 June 2009 10:15:52','04 June 2009 13:54:52'
    union all select '04 June 2009 10:16:01','04 June 2009 13:24:20'
    union all select '04 June 2009 13:24:20','04 June 2009 13:24:24'
    union all select '04 June 2009 13:24:32','04 June 2009 14:00:39'
    union all select '04 June 2009 13:54:52','04 June 2009 13:54:58'
    union all select '04 June 2009 14:00:39','04 June 2009 14:00:49'
    union all select '05 June 2009 05:53:58','05 June 2009 09:59:12'
    union all select '05 June 2009 10:16:05','05 June 2009 13:59:08'
    union all select '05 June 2009 13:59:08','05 June 2009 13:59:16'
    union all select '06 June 2009 06:04:00','06 June 2009 10:00:00'
    union all select '06 June 2009 10:16:54','06 June 2009 10:18:40'
    union all select '06 June 2009 10:18:40','06 June 2009 10:18:45'
    union all select '06 June 2009 10:23:00','06 June 2009 13:57:00'
    union all select '06 June 2009 10:23:48','06 June 2009 13:57:54'
    union all select '06 June 2009 13:57:21','06 June 2009 13:57:38'
    union all select '06 June 2009 13:57:54','06 June 2009 13:57:58'
    union all select '07 June 2009 21:59:30','07 June 2009 01:58:49'
    union all select '07 June 2009 22:12:16','07 June 2009 01:58:39'
    union all select '07 June 2009 22:12:25','07 June 2009 01:58:28'
    union all select '08 June 2009 02:10:33','08 June 2009 05:56:11'
    union all select '08 June 2009 02:10:43','08 June 2009 05:56:23'
    union all select '08 June 2009 02:10:49','08 June 2009 05:55:59'
    union all select '08 June 2009 05:55:59','08 June 2009 05:56:01'
    union all select '08 June 2009 05:56:11','08 June 2009 05:56:14'
    union all select '08 June 2009 05:56:23','08 June 2009 05:56:27'
    
    0 讨论(0)
提交回复
热议问题