要检查表是否存在,我们可以使用这个查询,它非常便宜:
#legacySql
SELECT last_modified_time FROM {dataset}.__TABLES__ WHERE table_id='{table}'
LIMIT 1
Run Code Online (Sandbox Code Playgroud)
是否有任何类似的廉价查询来检查分区是否为空?
据我了解,我可以在 where 子句中使用带有 _PARTITIONTIME 的选择,但无论限制子句如何,它最终都会处理分区中的所有数据(如果存在)。我必须检查是否存在多个分区,并且必须采用查询形式,而不是 API 请求。
我有可能运行多次的 cronjobs,但我只想在分区为空时才将数据写入分区。