我有開/關數據的一系列時間戳在表中,表示開/關狀態,或者在哪個國家「開始」MySQL查詢評估時間的東西總持續時間爲「開」
00:00:00 0
04:00:00 1
08:00:00 0
09:00:00 1
15:00:00 0
20:00:00 1
23:59:59 0
點
我需要計算在24小時內(例如)ON狀態的總持續時間。
在此簡化示例中,總持續時間= 1是 (04:00:00-> 08:00:00,09:00:00-> 15:00:00,20:00:00-> 23: 59:59 ie 13:59:59大約14h
我無法確定這是否可以單獨在SQL中完成,或者我使用的基礎框架(django)是否需要根據返回的數據來完成此操作。如果可能的話,我顯然會傾向於讓數據庫完成繁重的工作,因爲我們可能需要在我們單獨的統計數據包中使用SQL。
我不清楚我是否可以對(比如說)選擇中的前一個或下一個元素,我是一個有信心的SQL用戶,但是無法看到從哪裏開始這個或廣義的方法,有什麼想法?
我真的很喜歡這個在一個單一的查詢,或一些其他聰明的方式來計算這個我失蹤了!
首先,我會DESI gn表中的ON和OFF狀態時間在不同列上的同一行上,那麼這個任務將是微不足道的。如果這對你是不可能的,那麼你需要做大量的黑客工作才能完成它:) – 2010-02-10 15:20:36