web-dev-qa-db-ja.com

Redshiftですべてのテーブルとその作成者(または所有者)を一覧表示する方法

簡単だと思いましたが、Redshiftですべてのテーブルとその作成者(または所有者)を一覧表示する方法が見つかりませんでした。どんな助け/洞察も大歓迎です。

13
kee

これはpg_tablesテーブルであり、SQLは次のとおりです。

select tablename, tableowner From pg_tables 
14
kee

次のスクリプトを実行して、Redshiftテーブル、ビュー、およびそれらの所有者を一覧表示できます。

SELECT n.nspname AS schema_name
 , pg_get_userbyid(c.relowner) AS table_owner
 , c.relname AS table_name
 , CASE WHEN c.relkind = 'v' THEN 'view' ELSE 'table' END 
   AS table_type
 , d.description AS table_description
 FROM pg_class As c
 LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
 LEFT JOIN pg_tablespace t ON t.oid = c.reltablespace
 LEFT JOIN pg_description As d 
      ON (d.objoid = c.oid AND d.objsubid = 0)
 WHERE c.relkind IN('r', 'v') 
ORDER BY n.nspname, c.relname ;
3
LiriB