【发布时间】:2015-08-12 08:06:22
【问题描述】:
假设我们在 BigQuery 中有一个包含以下数据的表:
ColA | ColB | ColC | ColD
x | y | 1 | 5
x | y | 0 | 6
k | z | 1 | 4
ColA、ColB 为 String,ColC 为 Integer,ColD 时间戳。
我需要获取 ColA 的每个唯一值的最新行 (LAST(ColD))仅当 ColC 等于 1。也就是说,在上表中,查询的结果应该是:
ColA | ColB | ColC | ColD
k | z | 1 | 4
第 1 行和第 2 行不应包含在结果中,因为对于 ColA=x,表中的最后一个条目(第 2 行)包含 ColC=0。
我尝试了使用聚合函数(例如 MAX、LAST)结合子查询的各种查询,但未能达到预期的结果。
【问题讨论】:
标签: google-bigquery