データディクショナリみたいな

DB内で使われている列名を調査したくて
oracleでいうところのデータディクショナリみたいなの無いのかなぁと
探したらpg_attributeが列を管理していると
分かったので作成してみた。

SELECT 
pg_class.relname,
pg_attribute.attname,
pg_attribute.attnum,
pg_type.typname,
pg_attribute.attlen,
pg_attribute.attnotnull,
pg_attribute.attalign,
pg_attribute.attrelid,
pg_attribute.atttypid
FROM
pg_class , pg_attribute , pg_type
where pg_class.oid = pg_attribute.attrelid
and   pg_type.oid =pg_attribute.atttypid
and   pg_class.relkind = 'r'
and   pg_attribute.attname like '%'
--relkind:r = 通常のテーブル、i = インデックス、S = シーケンス、v = ビュー、c = 複合型、s = 特別、t = TOAST テーブル