2012-08-23 46 views
2

我有一個表xyz,有三列rcvr_id,mth_id和tpv。 rcvr_id是提供給客戶的ID,mth_id是存儲月份編號的列(mth_id計算爲(2012-1900)* 12 + 1,2,3 ..(取決於月份)。例如2011年12月將有1344 month_id,2012年1月1345等冠捷是一個變量,它顯示了客戶交易量。確定趨勢和使用sql分類

Example table 

rcvr_id mth_id tpv 

1  1344 23 
2  1344 27 
3  1344 54 
1  1345 98 
3  1345 102 
      . 
      . 
      . 
so on 

P.S if a customer does not have a transaction in a given month, his row for that month wont exist. 

現在的問題的基礎上換了個1327年至1350年的交易,我需要給客戶進行分類作爲穩定或零星。

下面是一個說明。

This pattern is for 1 customer .. i have millions of customers

以上圖片僅供1位客戶使用。我有數百萬的客戶。

我該怎麼辦?我不知道如何識別sql中的趨勢..或者更確切地說,如何以最好的方式實現它。

此外,我正在teradata上工作。

好吧,我已經找到了如何得到標準偏差。現在重要的問題是:我如何自己設置標準偏差限制?我只是無法隨意地說「如果標準開發是在40%以上,他是零星的其他穩定」。我想爲所有客戶計算標準偏差的平均值,如果高於那個值,那麼他零星地保持穩定。但我覺得有可能是一個更好的邏輯

+0

而不是平均我現在要使用標準差的標準偏差 – user1356163

+0

看看你的編輯,你可能想問一個關於如何使用標準偏差的新問題。 – BellevueBob

回答

3

我會建議STDDEV_POP函數 - 一個較高的值表示更大的值的變化。

select 
rcvr_id, STDDEV_POP(tpv) 
from yourtable 
group by rcvr_id 

STDDEV_POPStandard Deviation

功能如果不區分不夠,你可能需要看看回歸函數和方差。

+0

關於我如何使用它的一個小例子?或者也許是一個鏈接,所以我可以讀到它。 – user1356163

+1

@ganducoder請參閱編輯 - 這是一個統計功能 – podiluska

+0

感謝隊友:)。雖然它會爲Teradata工作嗎? – user1356163