You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在BigQuery中查找所有包含指定列名的表、数据集与数据库

BigQuery全项目范围查找指定列名的实现方法

你可以直接使用BigQuery的区域级INFORMATION_SCHEMA.COLUMNS视图实现全项目范围的列名检索,比扫描DDL的方式更精准高效,和你提供的Teradata查询逻辑完全等价的SQL如下:

SELECT
  table_catalog AS project_name,
  table_schema AS database_name, -- 对应Teradata的DatabaseName(BigQuery数据集名)
  table_name,
  column_name
FROM
  `你的GCP项目ID.region-你的资源区域名.INFORMATION_SCHEMA.COLUMNS`
WHERE
  -- 列名匹配规则
  column_name LIKE '%sender_country%'
  -- 排除带test的数据集
  AND table_schema NOT LIKE '%test%'
  -- 表名匹配规则
  AND table_name LIKE '%sender%'

注意事项

  • 把SQL中的占位符替换为实际信息即可使用:你的GCP项目ID替换为要查询的项目ID,你的资源区域名替换为数据集所在的区域(比如us、eu、asia-southeast1等)。如果数据集分布在多个区域,需要针对每个区域分别执行查询,BigQuery暂不支持跨区域的INFORMATION_SCHEMA统一查询。
  • 如果你确实需要通过DDL匹配信息(比如检索列注释等DDL中才有的内容),全项目扫描TABLES视图的写法如下:
SELECT
  table_catalog AS project_name,
  table_schema AS database_name,
  table_name,
  ddl
FROM
  `你的GCP项目ID.region-你的资源区域名.INFORMATION_SCHEMA.TABLES`
WHERE
  table_name LIKE '%sender%'
  AND ddl LIKE '%sender_country%'
  AND table_schema NOT LIKE '%test%'
  • 执行查询的账号需要持有对应项目所有数据集的元数据读取权限,否则查询结果仅会返回账号有权限访问的数据集内容。

内容的提问来源于stack exchange,提问作者Abhishek R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 02:36:08