Not a member of Pastebin yet?
                        Sign Up,
                        it unlocks many cool features!                    
                - SELECT
 - SEC_TO_TIME(SUM(TIME_TO_SEC(TIME(end_time)) - TIME_TO_SEC(TIME(start_time)))), user_id, DATE(start_time)
 - FROM
 - (SELECT
 - start_time, CASE WHEN TIME(end_time) > '09:00:00' THEN DATE_ADD(DATE(end_time), INTERVAL 9 HOUR) ELSE end_time END AS end_time, user_id
 - FROM
 - meetings
 - WHERE
 - TIME(start_time) < '09:00:00'
 - UNION
 - SELECT
 - CASE WHEN TIME(start_time) < '17:00:00' THEN DATE_ADD(DATE(start_time), INTERVAL 17 HOUR) ELSE start_time END AS start_time, end_time, user_id
 - FROM
 - meetings
 - WHERE
 - TIME(end_time) > '17:00:00') AS clamped_times
 - GROUP BY user_id, DATE(start_time)
 
Advertisement
 
                    Add Comment                
                
                        Please, Sign In to add comment