如何在AWS Athena中列出包含指定列的所有表
在AWS Athena中快速查找包含特定列的表
直接通过查询Athena内置的元数据系统表就能快速定位目标表,无需手动逐一检查:
- 利用
information_schema.columns表,它存储了Athena关联的Glue Data Catalog中所有表的列信息,执行以下SQL即可:
SELECT table_schema, table_name, column_name FROM information_schema.columns WHERE column_name = 'old_column_name' -- 替换为你要查找的目标列名 ORDER BY table_schema, table_name;
- 若需要模糊匹配列名(比如不确定列名全称),可以改用
LIKE语法:
SELECT table_schema, table_name, column_name FROM information_schema.columns WHERE column_name LIKE '%partial_column_name%' -- 用%匹配任意字符 ORDER BY table_schema, table_name;
- 如果你的数据分布在多个数据目录(Catalog)下,可加上
table_catalog字段筛选或展示:
SELECT table_catalog, table_schema, table_name, column_name FROM information_schema.columns WHERE column_name = 'old_column_name' ORDER BY table_catalog, table_schema, table_name;
注意:确保你拥有查询information_schema系统表的权限,查询结果会直接列出所有包含目标列的表及所属数据库。
内容的提问来源于stack exchange,提问作者Nikhil Padole
相关产品推荐
相关产品推荐

