【问题标题】:Tableau - Calculated field for difference between date and maximum date in tableTableau - 表格中日期和最大日期之间差异的计算字段
【发布时间】:2016-10-07 16:11:47
【问题描述】:

我在 Tableau 中加载了下表(它只有一列 CreatedOnDate

+-----------------+
| CreatedOnDate   |
+-----------------+
| 1/1/2016        |
| 1/2/2016        |
| 1/3/2016        |
| 1/4/2016        |
| 1/5/2016        |
| 1/6/2016        |
| 1/7/2016        |
| 1/8/2016        |
| 1/9/2016        |
| 1/10/2016       |
| 1/11/2016       |
| 1/12/2016       |
| 1/13/2016       |
| 1/14/2016       |
+-----------------+

我希望能够在表格中找到最大日期,将其与表格中的每个日期进行比较并获得天数差异。对于上表,表中的最大日期为 2016 年 1 月 14 日。每个日期都与 2016 年 1 月 14 日进行比较以找出差异。

预期输出

+-----------------+------------+
| CreatedOnDate   | Difference |
+-----------------+------------+
| 1/1/2016        |         13 |
| 1/2/2016        |         12 |
| 1/3/2016        |         11 |
| 1/4/2016        |         10 |
| 1/5/2016        |          9 |
| 1/6/2016        |          8 |
| 1/7/2016        |          7 |
| 1/8/2016        |          6 |
| 1/9/2016        |          5 |
| 1/10/2016       |          4 |
| 1/11/2016       |          3 |
| 1/12/2016       |          2 |
| 1/13/2016       |          1 |
| 1/14/2016       |          0 |
+-----------------+------------+

我的目标是创建这个差异计算字段。我正在努力寻找一种使用 DATEDIFF 的方法。

我们将不胜感激!

【问题讨论】:

    标签: date tableau-api datediff


    【解决方案1】:

    woodhead92,这种方法可行,但意味着您必须使用表格计算。更灵活的方法(从 v8 开始可用)是Level of Details expressions

    首先,使用称为 MaxDate LOD 的计算字段为整个数据集定义一个 MAX 日期:

    {FIXED : MAX(CreatedOnDate) }
    

    这将始终计算表格上的最大日期(也会覆盖过滤器,如果您需要反映它们,请确保您 add them to context

    然后您可以使用几乎相同的计算字段,但不需要 ATTR 或表格计算:

    DATEDIFF('day', [CreatedOnDate], [MaxDate LOD])
    

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多