Sql 从大查询数据集中的所有表中获取特定列数据

Sql 从大查询数据集中的所有表中获取特定列数据,sql,google-bigquery,Sql,Google Bigquery,我想从大查询数据集中的每个表中获取最新的创建日期。假设我有名为myDataset的数据集,有10个表:表a、表b、表c等等。。。(假设每个表都创建了_date列) 我知道我可以使用以下方法为每个表执行此操作: SELECT MAX(created_date) FROM `myDataset.myTable` 但是,我可以在myDataset中对整个表进行单个查询吗? 我只需要这样的输出并将其插入到新表中: | table_name | created_date

我想从大查询数据集中的每个表中获取最新的创建日期。假设我有名为myDataset的数据集,有10个表:表a、表b、表c等等。。。(假设每个表都创建了_date列) 我知道我可以使用以下方法为每个表执行此操作:

SELECT MAX(created_date) 
FROM `myDataset.myTable`
但是,我可以在myDataset中对整个表进行单个查询吗? 我只需要这样的输出并将其插入到新表中:

| table_name | created_date                   |
|------------|--------------------------------|
| table_a    | 2020-09-20 17:50:22.321449 UTC |
| table_b    | 2020-09-20 17:50:22.321449 UTC |
| table_c    | 2020-09-20 17:50:22.321449 UTC |
已尝试:

mydataset.__TABLES__ 
信息与图式

但我认为提供的创建时间和上次修改时间不是我想要的

找到了一种使用获取数据集中所有表或列的列表的方法

SELECT DISTINCT table_name
FROM `project_id`.myDataset.INFORMATION_SCHEMA.COLUMNS
ORDER BY table_name'
仍然不确定如何在不指定每个表的情况下联接/联合此表


编辑:最后在python中迭代每个表以获得MAX(created_date),不知道是否可以只使用SQL

如果您的表具有相同的列(域),您可以使用
Union

您可以像这样使用
Union all

SELECT '`table_a`' as table_name, MAX(created_date) 
FROM `table_a`
UNION ALL
SELECT '`table_b`' as table_name, MAX(created_date) 
FROM `table_b`
UNION ALL
SELECT '`table_c`' as table_name, MAX(created_date) 
FROM `table_c`

好的,我已经得到了created_date列的值,但是如何得到table_name值呢?哪些引用了数据集中的每个表名我非常感谢您的回答,谢谢,但是有没有其他方法不指定每个表?因为我在一个数据集中得到了300多个表。(已经更新了我上面的问题)我使用编程语言迭代获取MAX(created_date),不确定是否只能使用SQL