Jump to content

problem in computation of lates(disregard Seconds)


newphpcoder
 Share

Recommended Posts

Hi..I got problem in getting the time difference between two datetimes.My problem is how can I only get the difference of hours and minutes disregard the seconds from datetime..here is my sample login and logout:Login : 2012-03-12 05:39:17Logout: 2012-03-12 13:35:16And here is my code in getting the Rendered or total hours:

UPDATE reg_att SET Rendered = casewhen time_to_sec(time(LOGIN)) BETWEEN time_to_sec('05:35:00') AND time_to_sec('06:59:00') AND time_to_sec(time(LOGOUT)) BETWEEN time_to_sec('13:35:00') AND time_to_sec('15:35:00')AND DATE_FORMAT(LOGIN, '%W') IN ('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday')then sec_to_time(time_to_sec(concat(substr(LOGIN, 1,10), ' ' , '08:00:00')) -(time_to_sec(LOGIN) - time_to_sec(concat(substr(LOGIN, 1,10), ' ' , '05:35:59'))))End;

the output of this is :Rendered = 07:56:42and I need to compute the lates:I used this code for lates:

UPDATE reg_att SET Late = casewhen time_to_sec(time(LOGIN)) BETWEEN time_to_sec('05:35:00') AND time_to_sec('06:59:00') AND time_to_sec(time(LOGOUT)) BETWEEN time_to_sec('13:35:00') AND time_to_sec('15:35:00')AND DATE_FORMAT(LOGIN, '%W') IN ('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday')then sec_to_time(time_to_sec('08:00:00') - time_to_sec(Rendered))END;

the output of this is:Late = 00:03:18Now, How can be the late become : 00:04:00Disregard the seconds?his schedule is 05:35 - 13:35he login 05:39, so he was late 4 minutes, but in my code it computes 00:03:18 because it regards the seconds.Any help is highly appreciated.Thank you so much..

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...