【发布时间】:2019-07-24 05:42:44
【问题描述】:
我正在尝试使用 tableau 计算或 sql 返回每个客户的帐户最后一次销售一个月内的购买总和。
我有 8 月到 1 月的数据,每个月有 10 万多个帐户,一个帐户中有多个用户。数据集如下所示
Account User Item Plan Status date Sale
1 a toy unlimited open 1/1/2019 10
1 a book unlimited closed 1/5/2019 10
1 a toy unlimited open 1/10/2019 10
1 b toy unlimited open 1/1/2019 10
1 c book unlimited open 1/1/2019 10
1 d toy unlimited open 1/1/2019 10
1 d toy unlimited open 1/2/2019 10
1 f toy unlimited open 1/1/2019 10
1 a toy unlimited open 2/1/2019 10
1 a book unlimited closed 2/5/2019 10
1 a toy unlimited open 2/10/2019 10
1 b toy unlimited open 2/1/2019 10
1 c book unlimited open 2/1/2019 10
1 d toy unlimited open 2/1/2019 10
1 d toy unlimited open 2/2/2019 10
1 f toy unlimited open 2/1/2019 10
每个帐户、客户、上次销售和总月销售的预期结果应如下所示
1 a toy unlimited open 1/10/2019 30
1 b toy unlimited open 1/1/2019 10
1 c book unlimited open 1/1/2019 10
1 d toy unlimited open 1/2/2019 20
1 f toy unlimited open 1/1/2019 10
1 a toy unlimited open 2/10/2019 30
1 b toy unlimited open 2/1/2019 10
1 c book unlimited open 2/1/2019 10
1 d toy unlimited open 2/2/2019 20
1 f toy unlimited open 2/1/2019 10
我尝试过使用
进行画面计算IF [PlanCount] > 1 and [T|F MaxDate] = True then [Plan] else [Plan] END
或 Hive 中的 Row_Number 但任何列计数大于 0,其中有一个 Null 值,因为最大日期导致计划设置为 maxdate,但当 maxDate 条件为 false 时也为 null。这应该在哪里完成,在 etl 级别还是在 tableau 计算级别?
【问题讨论】:
标签: sql hadoop hive tableau-api hiveql