Finding free blocks of time in mysql and php?

前端 未结 4 1833
闹比i
闹比i 2020-12-01 11:43

I have a table in mysql like this:

+------------+------------+------------+------------+ 
|     date   |   user_id  | start_hour | end_hour   | 
+-----------         


        
4条回答
  •  无人及你
    2020-12-01 12:06

    Try this Query i hope its work for you.....

    SELECT
      a.id,
      a.end_hour    AS `Free time Start`,
      la.start_hour AS `Free Time End`,
      IFNULL(TIMEDIFF(la.start_hour, a.end_hour),'00:00:00') AS `Total Free Time`
    FROM appointment AS a
      LEFT JOIN (SELECT *
                 FROM appointment
                 LIMIT 1,18446744073709551615) AS la
        ON la.id = (SELECT
                      id
                    FROM appointment
                    WHERE id NOT IN(a.id)
                    ORDER BY (a.id > id)ASC
                    LIMIT 1);
    

提交回复
热议问题