我有一個MYSQL表,用於存儲我家中太陽能發電的數據。我有兩個逆變器設備,包括本表中的數據。爲了簡化,我的表結構(有說明)的相關部分是一樣的東西:查找未連續存儲的SQL記錄之間的差異
id <auto_increment>
addr <int address of the inverter>
etotal <total generation since the device has been online>
我試圖找到連續記錄每個逆變器,這樣我可以告訴多少能量生成之間的區別記錄之間的時間段(或者我最終選擇的任何時間段之間)。如果記錄被持續插入,我可以這樣做:
SELECT (t2.etotal - t1.etotal) AS eperiod
FROM solars AS t1, solars AS t2
WHERE t1.id+2 = t2.id AND t1.created_at >= CURDATE()
AND t1.addr = 245 AND t2.addr = 245 ORDER BY t1.id;
然而,這並不總是如人們希望的功能,而這似乎是一個糟糕的選擇。我唯一的想法是選擇一個帶有自動遞增ID的臨時表,然後在該表中做類似的選擇。如果可能的話,對單個查詢解決方案感興趣。
+1使用太陽能。 – Quassnoi 2011-01-26 16:29:01