从一列

时间:2017-06-12 09:39:21

标签: analytics tableau

如上所述,我目前正在尝试从一列中获取两个单独的值。

我有一个名为statusDate的列,我想知道状态是否超过一个月。如果超过一个月,它将被归类为Overdue,而不到一个月将被归类为Pending

这是我尝试过的,但它只给了我一个值PendingOverdue。但是,出于比较原因,我想要两者。

IF (DATEDIFF('month', today(), statusDate) > 1)
THEN 'OVERDUE'
ELSEIF (DATEDIFF('month', today(), statusDate) < 1)
THEN 'PENDING'
END

我的计算字段有什么问题吗?请帮忙,谢谢!

我尝试创建两个不同的计算字段,并将它们放在行部分中。但结果如下:

SCREENSHOT

我想创建一个饼图来显示逾期(长期)与待定(短期)的百分比。

2 个答案:

答案 0 :(得分:3)

  

但是,出于比较原因,我想要两者。

使用当前设置,如果您想要两个不同颜色的折线图,如果您在行上拖动计算字段以获取单独行或颜色中的值,则可以轻松比较这两个值。

如果要为每个状态着色饼图,请使用您拥有的饼图并将计算字段拖到&#34;颜色&#34;。这应该按预期分割馅饼。

您可以创建两个单独的计算字段作为U.Y. Fried描述了虽然这并没有给你任何额外的可能性,你现在的计算已经没有了。 在大多数用例中,如果它们位于不同的行中(比如你有它们,用&#34分隔;过期&#34;&#34;等待&#34;),那么比较值要容易得多。然后比较不同列中的值。

答案 1 :(得分:1)

以下是一种方法,您可以通过创建两个计算字段来创建两个字段。第一个你应该调用“过期”使用以下表达式;

     IF (DATEDIFF('month', today(), statusDate) > 1)
     THEN 'OVERDUE'
     END

用于“待定”使用;

     IF (DATEDIFF('month', today(), statusDate) < 1)
     THEN 'PENDING'
     END

如果您想总结一下,请退回一个号码,以供逾期使用;

     IF (DATEDIFF('month', today(), statusDate) > 1)
     THEN 1 
     ELSE 0
     END 

为挂起做相反的事情。

另外,当它恰好等于一个月时你应该考虑,使用=&gt;对于更大或等于,和=&lt;对于更少或等于,它取决于您的业务逻辑。

希望这对你有帮助!