特定のテーブルのフィールド名とフィールドタイプを得る

SELECT pg_attribute.attname, pg_type.typname, pg_attribute.attnum FROM pg_class
LEFT JOIN pg_attribute ON pg_class.oid=pg_attribute.attrelid
LEFT JOIN pg_type ON pg_attribute.atttypid=pg_type.oid
WHERE pg_attribute.attnum > 0 AND pg_class.relname='テーブル名'
ORDER BY pg_attribute.attnum;

こんなかんじで出ます。

   attname   |  typname  | attnum 
                                                                  • -
F1 | int4 | 1 F2 | int4 | 2 F3 | timestamp | 3