stan <stanb@xxxxxxxxx> writes: > I am trying to write a query to return the names, and data types of all the > columns in a view. It has been pointed out to me that the best approach > would be using pg_catalog. OK, so I found pg_view, which I can get the names > of a the views from and pg_attribute which can give me the column names, > but it looks like i need to join this on OID, and pg_table does not have > that data. Yeah, pg_tables is just a user-friendly view, it's not really that useful for programmatic work. I'd look directly at pg_class and pg_attribute for this problem. A good way to learn what to do is to see what psql does for its various \d commands --- if you start it with the -E option you'll see the underlying SQL it issues. It'll likely be more complicated than you want, but you can strip away what's not useful for you. regards, tom lane