提前感谢您对此进行了研究,希望有人能提供帮助。
我正在创建具有固定前缀+动态后缀的表,类似于: name123456,其中名称是固定/静态的,123456是一个递增的数值
我目前有多个表,如: name123456 name123457 name123458
我试图动态查询最新的那个(它是后缀最大的那个),在给定的例子中它是"name123458“。
在BigQuery UI中运行以下查询时:
#standardsql
select array_agg(distinct _TABLE_SUFFIX) from `project.dataset.name*`我没有得到任何结果,(据我所知)我应该得到上面列出的所有表。
我知道要获得最新的_TABLE_SUFFIX,我需要使用带有max(_TABLE_SUFFIX)的WHERE子句,但是因为我得到的是一个空的_TABLE_SUFFIX,所以我不能从它获得任何东西。
如果需要更多信息,请让我知道,我会根据需要更新。
发布于 2019-03-08 20:48:42
我自己找到了解决方案,所以我将在这里分享解决方案作为答案,但首先,感谢David和Martin Weitzmann的时间和帮助。
_TABLE_SUFFIX忽略某些表/不返回某些内容的问题是,我在dataset中的表都是空表(只是模式)。
就是这样,_TABLE_SUFFIX忽略了空表,希望它能帮助其他人。
发布于 2019-03-08 18:12:31
不能在SELECT语句中使用_TABLE_SUFFIX -只能在WHERE子句中使用。但是您可以使用元数据来查找最新的数据:https://cloud.google.com/bigquery/docs/information-schema-tables
https://stackoverflow.com/questions/55052822
复制相似问题