2013-05-16 62 views
0

在MySQL數據庫中,我有一個視圖(view_one),其中包含多個農業領域的植被指數。這些田地被進一步劃分爲情節,橫斷面和點。MySQL中總體標準偏差之間沒有差異?

以下是基本的餐桌設計:

measure_id | field_id | plot_id |橫切|點| vegetation_index_1 | .... |

我爲每個地塊的植被指數平均值及其各自的標準偏差創建了第二個視圖。

create view plot_avgs (measure_id, field_id, plot_id, avg_VI1, stddev_VI1, ... as select measure_id, field_id, plot_id, avg(VI1), stddev_samp(VI1), ... from view_one group by measure_id, field_id, plot_id;

我要的是情節的標準偏差,因此樣本(stddev_samp())的。

但是MySQL給我的是人口的stddev,不管使用的是stddev(plot_avg),std(plot_avg),stddev_pop(plot_avg)還是stddev_samp(plot_avg)

我懷疑它與我正在使用的聚合有關。

誰能幫我一把嗎?謝謝。

回答

0

好吧,我解決的事情自己:

,如果我用,我本來打算創建一個視圖,要麼只是運行查詢,或者使用它來創建一個表,我得到所需的非常相同的as select ... from ...聲明樣本的標準偏差(圖)。如問題描述,創建視圖時,這不會發生。

所以我會做的是使用永久表,而不是視圖,並經觸發的任何時間更新我插入新的數據到原始數據表。