【问题标题】:Calculate value if same customer如果同一客户计算价值
【发布时间】:2016-08-06 05:00:13
【问题描述】:

我有以下代码来计算天数:

count_days

DATEDIFF('day',LOOKUP(ATTR([visit_day]),-1),ATTR([visit_day])

结果如下:

customer_id | visit_day | count_days
customer 1  | 1/1/2016  | 
customer 2  | 1/3/2016  | 2
customer 2  | 1/15/2016 | 12
customer 3  | 2/1/2016  | 16
customer 3  | 2/5/2016  | 4

我正在尝试编写另一个仅由客户触发前一个函数的函数,因此前一个客户的最后一天不会减去一个客户的第一天。结果应如下所示:

customer_id | visit_day | count_days
customer 1  | 1/1/2016  | 
customer 2  | 1/3/2016  |
customer 2  | 1/15/2016 | 12 
customer 3  | 2/1/2016  | 
customer 3  | 2/5/2016  | 4

到目前为止我已经尝试过这段代码:

IF ATTR([customer_id]) != ATTR([customer_id])
THEN
   NULL
ELSE
   [count_days]
END

对这段代码有什么想法可以让它工作吗?

【问题讨论】:

    标签: if-statement tableau-api


    【解决方案1】:

    你很亲密。您可以像这样更改计算字段:

    IF LOOKUP(ATTR([Customer Id]),-1) = ATTR([Customer Id]) THEN 
       DATEDIFF("day",LOOKUP(ATTR([Visit Day]),-1),ATTR([Visit Day]))
    END
    

    它会渲染这个结果:

    【讨论】:

    • 我几乎明白了。虽然我是 Tableau 的新手,但我很快就到了。非常感谢您的解决方案。
    猜你喜欢
    • 1970-01-01
    • 2016-09-01
    • 2017-02-27
    • 1970-01-01
    • 1970-01-01
    • 2011-11-24
    • 2021-08-24
    • 2020-10-06
    • 2021-09-18
    相关资源
    最近更新 更多