Mysql 连续换班

Mysql 连续换班,mysql,Mysql,我有一个包含以下字段的表: -id (int) -team_id(int) -user_id (int) -date (date) -start_time(time) -end_time(time) 运行此查询: SELECT * FROM `shifts` WHERE user_id = 1 order by team_id, date, start_time; 给我以下结果: id team_id user_id date start_time end_time

我有一个包含以下字段的表:

-id (int)
-team_id(int)
-user_id (int)
-date (date)
-start_time(time)
-end_time(time)
运行此查询:

SELECT * FROM `shifts` WHERE user_id = 1 order by team_id, date, start_time;
给我以下结果:

id   team_id  user_id  date         start_time end_time
1    3        1        2017-11-29   10:00:00   11:00:00
2    3        1        2017-11-29   11:00:00   12:00:00
5    3        1        2017-11-29   12:00:00   13:00:00
6    3        1        2017-11-29   16:00:00   17:00:00
7    3        1        2017-11-29   17:00:00   18:00:00
10   4        1        2017-11-30   17:00:00   18:00:00
8    4        1        2017-11-30   19:00:00   20:00:00
51   5        1        2017-11-30   18:00:00   19:00:00
11   5        1        2017-11-30   19:00:00   20:00:00
我正在寻找一个查询,该查询提供了以下连续开始时间-结束时间的结果:

driver_id team_id date        contiguous_start_time  contiguous_end_time  hours
1         3       2017-11-29  10:00:00               13:00:00             3
1         3       2017-11-29  16:00:00               18:00:00             2
1         4       2017-11-30  17:00:00               18:00:00             1
1         4       2017-11-30  19:00:00               20:00:00             1
1         5       2017-11-30  18:00:00               20:00:00             2
非常感谢您的帮助