如何在quicksight中只获取最后一条记录?

kro*_*XXI 2 amazon-quicksight

我有一个由类似这样的东西组成的数据集,id<String>, date<Date>, status<String>其中充满了这样的数据:

+-------+------------------+----------------+
|   id  |       date       |     status     |
+-------|------------------|----------------+
|   1   | 25/05/2020 10:30 |      OPEN      |
+-------|------------------|----------------+
|   2   | 25/05/2020 10:31 |      OPEN      |
+-------|------------------|----------------+
|   3   | 25/05/2020 10:32 |      OPEN      |
+-------|------------------|----------------+
|   1   | 25/05/2020 12:30 |      CLOSED    |
+-------+------------------+----------------+
Run Code Online (Sandbox Code Playgroud)

我想要一个显示状态计数的视觉效果,但只获取每个 id 的实际状态,在本示例中,视觉效果应由以下数据形成:

+-------+------------------+----------------+
|   id  |       date       |     status     |
+-------|------------------|----------------+
|   2   | 25/05/2020 10:31 |      OPEN      |
+-------|------------------|----------------+
|   3   | 25/05/2020 10:32 |      OPEN      |
+-------|------------------|----------------+
|   1   | 25/05/2020 12:30 |      CLOSED    |
+-------+------------------+----------------+
Run Code Online (Sandbox Code Playgroud)

我尝试使用 ID 的不同计数,但它显示 3 个打开和 1 个关闭,我需要一个 2 个打开 1 个关闭结果。

我还尝试使用 TOP 或 Botton 选项制作日期过滤器,但这会将数据过滤到具有更多记录的日期。

那么,有什么办法可以做到这一点吗?

提前致谢。

kro*_*XXI 5

好的,6 个月后我可以自己回复。

我所做的是 ifElse 与日期的 maxOver 相结合,在 else 中为 true 或 null 时获取状态。

ifelse(Date=maxOver(Date,[id],PRE_FILTER),status,null)
Run Code Online (Sandbox Code Playgroud)