我有一個RoR應用程序被連續記錄並顯示在網站上實時傳感器數據。然後我有一個名爲傳感器的表,它具有所有傳感器的唯一列表並存儲最新值。
我還有另一個表歷史其中轉儲所有傳感器值收到每個傳感器。
所以關係「檢測器有許多歷史」,則TIME-STAMP山坳記錄的創建時間戳記。
並非所有傳感器都以相同的間隔或頻率更新。
問題
現在我想從繁重的用戶,在過去的日期和時間的輸入時間戳記,並顯示哪些傳感器被一同顯示。例如,假設我想在昨天下午2點看到所有傳感器看起來像什麼,一旦我從用戶那裏得到這個時間戳,我如何從歷史記錄表中找到最接近輸入時間戳的一個傳感器值。
我期待在傳感器模型中添加一個方法,該方法將time_stamp作爲參數,並從歷史記錄表中檢索最接近輸入time_stamp的值。
他們寫這個Active記錄查詢的最簡單方法是什麼?
感謝 Shaunak
感謝一個快速的答案!在關閉之前還有一件事,每個傳感器每10分鐘更新一次,並且我有大約一年的數據!所以每次我想要讀取一個傳感器的值時,不要整理整個事物需要很多時間?是否有某種方法可以根據輸入時間戳對一些跨度進行優化,從而優化查詢?我正在使用MS SQL Server 2008.再次感謝! – Shaunak 2012-01-31 01:09:35
是的,您可以將其限制爲僅考慮合理的時間戳。我用一些細節更新了我的答案。 – 2012-01-31 01:17:01
太棒了!會嘗試一下,讓你知道!謝謝! – Shaunak 2012-01-31 01:21:04