On 5/3/17 02:56, Pavel Stehule wrote: > Sometimes I have to solve the result types of some query. It is > invisible in psql. You have to materialize table or you have to > create view. Now, when we can enhance \g command, we can introduce > query describing > > some like > > select a, b from foo > \gdesc > > | type | length | collation | .... > ------------------------------------------------ > a | varchar | 30 | > b | numeric | 20 | > > > here is the patch. It is based on PQdescribePrepared result.
I have often wished for functionality like this, so I'm in favor of investigating this.
I don't think you need a separate call to prepare the query. You can get the result column types using PQftype(). (Hmm, you can get the typmod that way, but not the collation.)
the describe command is used and collation info is not available
looks to the attached patches
My thinking in the past has been to put the column types either in the column headers, like "colname (coltype)", or in the footer, along with the actual query result.
My first idea was like classic gui implementation
colname1
type
==========
data
but the header is not multi line.
Merging with result is another way, but mostly you don't need this info. So special command looks better.
-- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services