我剛開始學習SQLite,並有一個問題。SQLite:我如何找到行數的每日/每週/每月/每年的平均值
這裏是我的意思的一個例子。
這是我的CSV:
date
2010-10-24
2010-10-31
2010-11-01
2011-02-14
2011-02-15
2011-02-16
2011-10-01
2012-01-15
2012-05-12
2012-05-14
2012-08-12
2012-08-26
我的代碼:
SELECT STRFTIME('%Y-%m', date) AS 'month', COUNT() AS 'month_count'
FROM tableName
GROUP BY STRFTIME('%Y-%m', date);
結果(以逗號分隔的形式):
month, month_count
2010-10, 2
2010-11, 1
2011-02, 3
2011-10, 1
2012-01, 1
2012-05, 2
2012-08, 2
我現在正在尋找的是一種每月獲得「month_count」的平均數量的方法,這當然不同於「month_count」的平均值。也就是說,前者等於0.55,後者等於1.71,我試圖計算前者。
我試過使用AVG(COUNT()),雖然這顯然沒有邏輯意義。
我猜我必須將代碼生成的表存儲爲臨時文件,然後從中獲取平均值,但我不確定如何正確編寫它。
有誰知道我錯過了什麼?
你能解釋一下你是如何得到0.54? – dcp
哎呦,看起來我已經掉了1/100,dcp。我打算說'0.55。'。從2010-10到2012-08的月數是22.「month_count」的總數是12. 12/22 = 0.55。這是每月0.55。 – Username
用戶名 - 請參閱我的最新修訂答案,希望這個想法有效。 – dcp