2014-05-02 51 views
0

我有一張表,我試圖從中提取按天分組的sumd timediff信息。我不知道這是否可能 表列:mode_type,start_time。 每次員工啓動或停止計時器時,此表中都會存在一條記錄。 mode_type = 1表示啓動,mode_type = 0表示停止。MySQL時間差異按天分組

我想返回過去30天內每天所用秒數的總和。 E.g:

date, seconds_used 
02/04/2014, 25 
03/04/2014, 12415 
04/04/2014, 925 

目前我可以返回的每mode_type和日期使用秒的列表,但是這個需要PHP以後計算。

SELECT 
     mode_type, 
     Sum(Unix_Timestamp(start_time)) AS time, 
     start_time 
    FROM 
     activations 
    WHERE 
     start_time < Date(Now() + INTERVAL 1 MONTH) 
    GROUP BY 
     mode_type, Day(start_time) 
    ORDER BY 
     start_time 

我卡住了...這是可能的還是我需要做還原計算差異PHP發佈請求? 在此先感謝。

回答

0

你可以嘗試這樣的:

SELECT DATE(start_time) AS startdate, TIME_TO_SEC(TIMEDIFF(NOW(),start_time)) AS secs 
FROM activations 
GROUP BY 
     startdate 
+0

感謝您的建議。這給了我從NOW到開始時間的差異,但我需要知道從end_time到start_time的差異。開始時間定義爲mode_type = 1的那一天的激活總和。因此,結束時間定義爲mode_type = 0的那一天的激活總和。謝謝 – maccaj22

+0

有什麼想法?謝謝 – maccaj22

+0

NOW()在這裏的結束時間 – user3470953