2015-09-21 32 views
2

我有一個具有以下字段的purchase_log表條件:的Tableau - 在LOD表達

UID,日期,類別,數量

而且我想知道每個用戶的第一和第二的購買日期的每個類別。

例如:

+-----+------+----------+--------+ 
| uid | date | category | amount | 
+-----+------+----------+--------+ 
| A | d1 | c1  | 100 | 
| A | d2 | c2  | 200 | 
| A | d3 | c1  | 120 | 
| A | d4 | c2  | 300 | 
+-----+------+----------+--------+ 

對於上述用戶記錄,我想說從C1類第一購買,則在日D1,並從C1類第二次購買是在日期D3製作。

我目前在3個計算字段:

  • 第一次購買:

    { FIXED [uid] : MIN([date])} 
    
  • 重複購買:

    IIF([date]>[1st Purchase],[date],null) 
    
  • 2日購買:

    { FIXED [uid] : MIN([Repeat Purchase])} 
    

但是,由於類別之間沒有區別,所以我無法看到有關類別的日期。

我應該如何解決這個問題?

謝謝。

回答

3

您可以通過在uid和類別上同時進行。

  • 第一次購買:

    { FIXED [uid],[category] : MIN([date])} 
    
  • 重複購買:

    { FIXED [uid],[category]: IIF([date]>[1st Purchase],[date],null)} 
    
  • 2日購買:

    { FIXED [uid],[category] : MIN([Repeat Purchase])} 
    
+0

字符喜說謊,謝謝你的回答。但是,重複購買時,我得到「LOD表達式的結果必須是聚合」錯誤。我應該如何解決這個問題? – CanCeylan

+0

@CanCeylan嘗試{FIXED [uid],[category],[date]:IIF([date]> [1st Purchase],[date],null)} 將日期添加到LOD應該減少聚合粒度日期級別。 –

+0

也試過這個,但仍然得到相同的錯誤,並強調了IIF聲明。 – CanCeylan