如何在tableau中编写计算字段以根据列条件选择最新记录?

问题描述 投票:0回答:1
  • 日期参考编号值 TxnType
  • 3 月 23 日 SS 20 BillDoc
  • 4 月 23 日 G4 40 BillDoc
  • 5 月 23 日 HT 85 BillDoc
  • 23 年 1 月 R3 3 积分
  • 2 月 23 日 R3 5 积分
  • 8 月 23 日 D7 10 学分
  • 9 月 23 日 D7 15 学分

编写计算字段公式,通过对帐单 TxnType 的值求和来给出总价值,但对于 Credit TxnType,它会选择与每个 RefNum 的最新日期记录相对应的值。所以总价值应该是20+40+85+5+15

tableau-api tableau-desktop calculated-field
1个回答
0
投票

您可以编写一个 LOD 计算来查找每个 RefNum 的最后一次信用交易的日期,称其为 Last_Trans_Date_Per_RefNum 定义为

{FIXED [RefNum] : MAX(IF [TxnType] = "Credit" THEN [Date] END) }

阅读 Tableau 帮助中的详细级别计算,了解其工作原理。

然后定义另一个字段,称其为 New Value 定义为

If [Txn Type] = "BillDoc" OR [Date] = [Last_Trans_Date_Per_RefNum] THEN [Value] END

请注意,这种方法忽略了如果最后一天有多个信用交易该怎么办的问题。正如所写,它将包括 RefNum 最后一天的每笔信用交易

© www.soinside.com 2019 - 2024. All rights reserved.