【发布时间】:2021-12-13 18:23:49
【问题描述】:
我想在 Big Query 中的所有数据集/数据库的所有表中查找特定列名。
在 Teradata 中,可以通过运行以下命令来完成:
SELECT
DatabaseName,
TableName,
ColumnName
FROM
DBC.Columns
WHERE
ColumnName LIKE '%sender_country%'
AND DatabaseName NOT LIKE '%test%'
AND tablename LIKE '%sender%'
如何在 Big Query 中完成同样的事情?
我知道我们可以通过运行以下命令来查找特定数据集中的不同列:
SELECT
ddl
FROM
project-name.my_database_name.INFORMATION_SCHEMA.TABLES
WHERE
table_name like '%sender%'
AND ddl LIKE '%sender_country%'
但上述查询将搜索限制为仅一个数据集/数据库(在此示例中为 my_database_name)。
如何将搜索扩展到所有数据集?
【问题讨论】:
-
INFORMATION_SCHEMA 是每个数据库的。唯一的办法就是多查询,动态sql等
标签: sql google-bigquery teradata