Redshift 查看所有模式中的所有表

Posted

技术标签:

【中文标题】Redshift 查看所有模式中的所有表【英文标题】:Redshift view all tables across all schemas 【发布时间】:2021-03-15 06:43:47 【问题描述】:

我有一个包含多个模式的红移数据库。每个模式包含多个表。 我需要搜索一个特定的表,但我不知道它驻留在哪个模式中。 有没有可以用来获取所有架构中所有表的名称的查询?

预期 o/p:

Schema 1  table 1
Schema 1  table 2
Schema 2  table 1
......

【问题讨论】:

【参考方案1】:

在 Redshift 中,您可以使用information_schema.tables 系统表来获取表及其架构详细信息。 请注意,您可能没有访问此表的权限。请您的数据库管理员执行以下查询并获取详细信息。

select t.table_schema, t.table_name
from information_schema.tables t
where t.table_name = 'test1' -- Your Table Name
order by t.table_name;

 table_schema  | table_name
---------------+------------
 public        | test1
 sample_schema | test1

【讨论】:

以上是关于Redshift 查看所有模式中的所有表的主要内容,如果未能解决你的问题,请参考以下文章

Redshift - 提取约束

Redshift 表所有权和删除查询

R 在使用 dplyr 或 RPostgreSQL 的模式下访问 redshift 表

将Redshift架构隐藏到特定用户或仅显示特定架构

删除 Redshift 架构中的所有表 - 不删除权限

创建 Redshift 生产的副本,每个表中的 # 条记录有限