2015-09-20 91 views
0

嘗試過了一段時間,以獲得MySQL中的滾動標準偏差。我已經嘗試了下面的代碼,但是當我在Excel中進行檢查時,它並不協調。移動/滾動標準偏差在n期內

這裏是我的嘗試:

SELECT STDDEV_POP(sales) FROM (SELECT `sales` FROM `table` WHERE `company` = '". $company ."' AND `date` <= '". $date ."' ORDER BY `date` DESC LIMIT $period) AS subquery 

我用$日期,以便我可以限制數據,如果我在某個日期之前需要它。 $ period指定標準偏差的計算時間(例如5天)。

編輯:

根據要求,只是一些進一步的細節。附上的圖像是在Excel中完成的檢查,我剛從here獲取數據。

Excel Worksheet

的SQL小提琴是here。值調和回Excel表時的日期爲「2012年12月15日」,但不爲「二〇一二年十二月十六日」或「2016年12月17日」

+0

把它放在SqlFiddle,並顯示與SQL小提琴和Excel截圖更新Excel的畫面 – Drew

+0

的快照 – Mark

回答

0

GOT通過MySQL和產生的數字Excel來協調。

1)在stockcharts鏈路中所用的方法來計算標準偏差斷偏差的10天平均平方。這不是計算標準偏差的常規方法。

2)當在Excel中進行測試時,我使用的STDEV()函數,其中假定樣本,但是,在MySQL所使用的函數是STDDEV_POP()其中假定人口。

這兩點是爲什麼數字可能不調和。現在一切都好!