我们有一个手动分区的“视频元数据”表,每天都会收到新鲜数据。在我们的系统中,保留旧数据仅出于历史原因,因为最新数据是最新的。
我们无法确定的是如何使用LookML仅引用此表中的最新分区。
到目前为止,我们已经尝试将视图存储在BigQuery中。我们已经尝试以标准和旧版SQL的形式将简单的“获取最新分区”查询存储为视图,但尝试失败,并且经过一些搜索,这似乎是设计使然,即使错误消息指出“未找到数据集”而不是更相关的东西。
我们还尝试将过滤器内置到Looker中,但是我们无法使事情真正生效,并且只能通过它返回最新数据。
任何帮助将不胜感激。
答案 0 :(得分:5)
我们设法找到了一种解决方案,派生表
我们发现,由于无法在BigQuery一侧定义视图,因此可以在Looker一侧实现,因此我们在视图内部的derived table块中定义了表。
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_*;;
}
这为我们提供了仅包含最新数据的视图。