Tableau - table 中日期和最大日期之间差异的计算字段

Tableau - Calculated field for difference between date and maximum date in table

我在 Tableau 中加载了以下 table(它只有一列 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       |
+-----------------+

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

预期输出

+-----------------+------------+
| 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 |
+-----------------+------------+

我的目标是创建这个 Difference 计算字段。我正在努力寻找一种使用 DATEDIFF 来执行此操作的方法。

如有帮助将不胜感激!!

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

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

{FIXED : MAX(CreatedOnDate) }

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

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

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

希望对您有所帮助!