2011-10-02 36 views
2

經過的時間,如果我有兩排Mysql的共有來自兩個日期

id created   start   stop 
1 28-01-2011 23:00 28-01-2011 23:00 28-01-2011 23:01 
2 28-01-2011 23:10 28-01-2011 23:10 28-01-2011 23:11 

我可以運行什麼查詢來獲取總時間爲一個日期,所以28-01-2011的總時間爲2分鐘。

這可能嗎?

+0

做那些列有型'datetime'或者是他們在這個格式字符串: 'DD-MM-YYYY HH:MM'? –

+0

列類型:時間戳。 @MarkByers – benhowdle89

回答

1

以及一個選擇是直截了當:

select sum(unix_timestamp(stop) - 
    unix_timestamp(start))/60 from table 
    where date(created) = '28-01-2011'; 

mysql> select now(), date_add(now(), interval 10 minute); 
+---------------------+-------------------------------------+ 
| now()    | date_add(now(), interval 10 minute) | 
+---------------------+-------------------------------------+ 
| 2011-10-04 13:29:56 | 2011-10-04 13:39:56     | 
+---------------------+-------------------------------------+ 
1 row in set (0.01 sec) 

mysql> select sum(unix_timestamp(now()) - 
      unix_timestamp(date_add(now(), interval 10 minute))); 
+----------------------------------------------------------------------------------+ 
| sum(unix_timestamp(now()) - unix_timestamp(date_add(now(), interval 10 minute))) | 
+----------------------------------------------------------------------------------+ 
|                    -600 | 
+----------------------------------------------------------------------------------+ 
1 row in set (0.00 sec) 


mysql> select sum(unix_timestamp(now()) - 
      unix_timestamp(date_add(now(), interval 10 minute)))/60 ; 
+---------------------------------------------------------------------------------------+ 
| sum(unix_timestamp(now()) - unix_timestamp(date_add(now(), interval 10 minute)))/60 | 
+---------------------------------------------------------------------------------------+ 
|                    -10.0000 | 
+---------------------------------------------------------------------------------------+ 
1 row in set (0.00 sec) 
+0

有人低調,精心製作,所以我知道什麼是錯的。 – jancha

+0

你測試過了嗎? –

+0

我沒有。我已添加提示,這將有所幫助。只是做了一些測試,並看到上述結果。 – jancha

相關問題