pw wrote:

Hello,

I am curious if there is a postgresql function that will
return a list of header names based on an input query text.

ie:


select return_headers("SELECT name, date, shape FROM some_table;") as headers;

returning:

headers
-------
name
date
shape


Thanks for any help.

Pw

As a supplementary comment to this:
This information can be extracted from the pg_catalog
in several steps as follows:

CREATE VIEW testview AS (SELECT name, date, shape FROM some_table);

SELECT distinct attname FROM pg_attribute, pg_class, testview WHERE attrelid=pg_class.oid AND pg_class.relname='testview';

/*GET THE COLUMN HEADERS HERE AND RETURN THEM*/

DROP VIEW testview;

I was however hoping someone had already created a
function that was standard.


ie:
CREATE FUNCTION return_header_names(text) RETURNS SETOF string
    AS '
        CREATE VIEW testview AS ($1);
SELECT distinct attname FROM pg_attribute, pg_class, testview WHERE attrelid=pg_class.oid AND pg_class.relname='testview';
        '
    LANGUAGE SQL
    IMMUTABLE
    RETURNS NULL ON NULL INPUT;


Thanks again,


Pw

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

Reply via email to