检查数据集是否已使用新表BigQuery更新

时间:2018-08-17 15:12:33

标签: google-bigquery

我目前有一个包含碎片表的数据集(例如:流量),每周都会添加名称为'Traffic_timestamp'的数据,其中时间戳是创建日期。

我想检查数据集中是否存在特定的'Traffic_timestamp'。寻找一种自动检查方式,而不是手动检查数据集。

1 个答案:

答案 0 :(得分:1)

下面的示例(适用于BigQuery Standard SQL)应该为您提供一个想法

#standardSQL
SELECT * 
FROM `project.dataset.__TABLES_SUMMARY__`
WHERE REGEXP_CONTAINS(table_id, CONCAT('Traffic_', r'\d{8}'))
AND SUBSTR(table_id, -8) = FORMAT_DATE('%Y%m%d', CURRENT_DATE())   

您可以调整为new table的任何特定逻辑
例如,如果您要查找前一天的表格,则可以使用

AND SUBSTR(table_id, -8) = FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY))