我目前有一个包含碎片表的数据集(例如:流量),每周都会添加名称为'Traffic_timestamp'
的数据,其中时间戳是创建日期。
我想检查数据集中是否存在特定的'Traffic_timestamp'
。寻找一种自动检查方式,而不是手动检查数据集。
答案 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))