0
我想從mysql數據庫中找到兩個值的前綴變化。通過時間戳獲取值以查找百分比變化。 Mysql
我有一個cron作業設置爲大約插入值每一個小時..
每個值都有一個與之關聯的unix時間戳,我想要得到的前幾天(〜24小時)的值,並用當前比較一個得到百分比增加或減少。
表看起來是這樣的:
+-----+----+
|value|time|
+-----+----+
我想從mysql數據庫中找到兩個值的前綴變化。通過時間戳獲取值以查找百分比變化。 Mysql
我有一個cron作業設置爲大約插入值每一個小時..
每個值都有一個與之關聯的unix時間戳,我想要得到的前幾天(〜24小時)的值,並用當前比較一個得到百分比增加或減少。
表看起來是這樣的:
+-----+----+
|value|time|
+-----+----+
你需要從第1天2天的值相加,是嗎?這會給你在日曆日之間的讀數之間的變化。
SELECT t1.time, (sum(t1.value) - sum(t2.value))
from table t1, table t2
where t1.time>t2.time
and t1.time = t2.time + (60 * 60 * 24)
group by date(from_unixtime(t1.time)
試試這個假設有前一天的準確匹配:
SELECT T1.time, (T1.value - T2.value) * 100/T2.value AS percent_change
FROM yourtable T1
JOIN yourtable T2
ON T1.time = T2.time + (60 * 60 * 24) --# seconds in a day
WHERE T1.time > ....
在24小時前,總是會有一個值** **。那麼第一天的價值呢?那麼前一天就沒有價值了。那麼會發生什麼? – 2011-03-16 20:35:05