Return the total working time, using SUM. : Time « Date Time « SQL / MySQL






Return the total working time, using SUM.

     
mysql>
For example, here is the result for all the days in March 2005:
mysql>
mysql> CREATE TABLE mytable (
    ->     id INT AUTO_INCREMENT,
    ->     begintime DATETIME,
    ->     endtime DATETIME,
    ->     PRIMARY KEY (id)
    -> );
Query OK, 0 rows affected (0.01 sec)

mysql>
mysql> INSERT INTO mytable (begintime, endtime) VALUES
    ->         ('2005-03-27 7:15', '2005-03-27 18:00'),
    ->         ('2005-03-28 8:00', '2005-03-28 18:00'),
    ->         ('2005-03-29 7:30', '2005-03-29 16:50'),
    ->         ('2005-03-30 7:00', '2005-03-30 17:15');
Query OK, 4 rows affected (0.00 sec)
Records: 4  Duplicates: 0  Warnings: 0

mysql>
mysql> SELECT SEC_TO_TIME(SUM(UNIX_TIMESTAMP(endtime) -
    -> UNIX_TIMESTAMP(begintime))) AS sumtime
    -> FROM mytable
    -> WHERE begintime>='2005-03-01 00:00:00' AND
    -> begintime<='2005-03-31 23:59:59';
+----------+
| sumtime  |
+----------+
| 40:20:00 |
+----------+
1 row in set (0.00 sec)

mysql>
mysql>
mysql>
mysql> drop table mytable;
Query OK, 0 rows affected (0.00 sec)

mysql>

   
    
    
    
    
  








Related examples in the same category

1.Get Current time
2.Extract the entire time value by using the TIME() function: TIME(
3.Comparing Times to One Another
4.TIME type column
5.Compare time value
6.Alias column for constant time value
7.Calculates the sum of the two TIME values