如何从手动分区的BigQuery表中引用最新表

Sam*_*ett 1 sql google-bigquery looker

我们有一个手动分区的“视频元数据”表,每天都会收到新数据。在我们的系统中,旧数据仅出于历史原因保留,因为最新数据是最新的。

我们不能确定的是如何使用LookML引用此表中的最新分区。

到目前为止,我们已经尝试将视图存储在BigQuery中。我们已经尝试以标准和旧版SQL的形式将简单的“获取最新分区”查询存储为视图,但尝试失败,并且经过一些搜索,这似乎是设计使然,即使错误消息指出“未找到数据集”而不是更相关的东西。

我们还尝试将过滤器内置到Looker中,但是在使事情真正起作用并且仅通过它返回最新数据方面遇到了麻烦。

任何帮助,将不胜感激。

Sam*_*ett 5

我们设法找到了一个解决方案,派生表

我们认为,由于无法在BigQuery一侧定义视图,因此可以在Looker一侧实现,因此我们在视图内部的派生表块中定义了表。

derived_table: {
    sql: SELECT * FROM dataset.table_*
         WHERE _TABLE_SUFFIX = (
             SELECT max(_TABLE_SUFFIX) FROM dataset.table_*
         );;
    sql_trigger_value: SELECT max(_TABLE_SUFFIX) FROM dataset.table_*;;
}
Run Code Online (Sandbox Code Playgroud)

这为我们提供了仅包含最新数据的视图。