我們每隔一秒存儲系統的實驗數據。我們還將Date-Time,system_ON_Status和其他參數一起存儲。根據一天中的要求(可能是3-4次)打開系統。如何獲得兩行之間的差異
現在我們需要生成查詢來顯示實驗的開始和結束時間。
system_ON_Status字段在SQL中作爲布爾值存儲。
對於ON爲真,對於爲False爲False。
感謝
我們使用SQL Server 2008 R2
Date_Time System_ON_Status
2014-03-04 16:01:01:000 0
2014-03-04 16:01:02:000 0
2014-03-04 16:01:03:000 0
2014-03-04 16:01:04:000 0
2014-03-04 16:01:05:000 1
2014-03-04 16:01:06:000 1
2014-03-04 16:01:07:000 1
2014-03-04 16:01:08:000 1
2014-03-04 16:01:09:000 1
2014-03-04 16:01:10:000 0
2014-03-04 16:01:11:000 0
2014-03-04 16:01:12:000 1
2014-03-04 16:01:13:000 1
2014-03-04 16:01:14:000 1
2014-03-04 16:01:15:000 1
2014-03-04 16:01:16:000 0
2014-03-04 16:01:17:000 0
2014-03-04 16:01:18:000 0
2014-03-04 16:01:19:000 1
2014-03-04 16:01:20:000 1
2014-03-04 16:01:21:000 1
2014-03-04 16:01:22:000 1
2014-03-04 16:01:23:000 1
2014-03-04 16:01:24:000 1
的輸出必須爲:01:05:000 和實驗16結束 1)實驗,即16的開始: 01:09:01:05:000 - 16:16之間的差異:000 系統是爲操作01:09:000 4秒
2)實驗,即16的開始時間:01:12:000 和實驗結束16:01:15:000 系統運行於:16:01:05:000 - 16:01:09:000之間的差異3秒
2)實驗開始即16: 01:19:000 和實驗結束16:01:24:01:05:000 - 16:16之間的差異:000 系統是爲操作01:09:000 5秒
您可能想詳細說明您的數據結構,以便人們可以更好地幫助您。話雖如此,你可能想看看聚合函數,所以搜索'GROUP BY'並使用'MIN'/'MAX'來確定開始和結束時間可能會起作用 – talegna
您正在使用哪些DBMS? Postgres的?甲骨文? –
'從表'中選擇max(Time),min(Time),max(Time)-min(Time)作爲Time_GAP? –