Tableau:DATEDIFF('天',MIN([开始日期]),[结束日期])

时间:2015-06-06 02:56:31

标签: tableau calculated-columns

干杯!

我试图让图表工作,向我显示工作单元(序列号)开始后每天完成的工单数。我希望能够"影子"多个序列号相互重叠,标准化为开始日期为' 0'。

目前我的数据集中有列:

Work order number     (0..999), repeats for each serial number
Serial number         (0..999)
Work order start date (Datetime)
Work order end date   (Datetime)

例如说新的序列号每天开始,包含5个工作单,需要5天才能完成(在任何给定时间,WIP中有5个单位)。

数据可能如下(日期显示为整数):

| Work order number | Serial number | Work order start date | Work order end date |
| ----------------- | ------------- | --------------------- | ------------------- |
| 1                 | 1             | 1                     | 2                   |
| 2                 | 1             | 1                     | 3                   |
| 3                 | 1             | 2                     | 4                   |
| 4                 | 1             | 3                     | 5                   |
| 5                 | 1             | 4                     | 5                   |
| 1                 | 2             | 2                     | 3                   |
| 2                 | 2             | 2                     | 4                   |
| 3                 | 2             | 3                     | 5                   |
| 4                 | 2             | 4                     | 6                   |
| 5                 | 2             | 5                     | 6                   |

我假设我需要一个可能类似的计算列:

[Work order end days since start] = 
   [Work order end date] - MIN(
      IF(*serial number matches current*, [Work order start date], NULL)
   )

我(显然)不知道如何在Tableau中实际创建这样的计算字段。

列中的值(与上述数据的顺序相同)应为:

| Work order end days since start |
| ------------------------------- |
| 1                               |
| 2                               |
| 3                               |
| 4                               |
| 4                               |
| 1                               |
| 2                               |
| 3                               |
| 4                               |
| 4                               |

任何指导或帮助?很高兴澄清任何事情。非常感谢!干杯!

1 个答案:

答案 0 :(得分:0)

如果您将其重新整形为具有单个日期列并添加一个类型列,指示当前行是否描述了工作订单的开始或完成,那么使用此类数据将获得更好的结果。

| Work order number | Serial number | date | type |

想想代表状态变化的每一行,而不是工单。

特定日期的未结工单将是那个在该日期之前有开始记录但在该日期之前没有完成记录的工单。如果type = New,则将计算字段定义为+1;如果type = Completion,则将-1定义为-1,则可以使用该字段的运行总计来查看一段时间内打开的工作订单的数量。