Re: How to read refcursor column's using string column name? - Mailing list pgsql-general

From Pavel Stehule
Subject Re: How to read refcursor column's using string column name?
Date
Msg-id CAFj8pRBkJSyAagKJNms3rBni1jJyhnBNeksrnWmFGy8ZO=P=gg@mail.gmail.com
Whole thread Raw
In response to How to read refcursor column's using string column name?  (inspector morse <inspectormorse86@gmail.com>)
List pgsql-general


2015-03-10 20:56 GMT+01:00 inspector morse <inspectormorse86@gmail.com>:
How do I access a cursor's column using a string column?

Example:

CREATE FUNCTION write_html_select(items cursor, data_value_field text, data_text_field text)
AS
$$
DECLARE r RECORD;
                html TEXT;
BEGIN
    FOR r in items LOOP
       html = "<option value=" || r[data_value_field] || "/>";
   END LOOP;

  RETURN html;
END;
$$
LANGUAGE plpgsql;

As you can see, I want to access RECORD r's columns by a STRING column name value (data_value_field etc)....is there anyway to do this?

you can translate record to Hstore type and then you can take a value by dynamic name. Usual older solution was using plperl or plpython.

Regards

Pavel

pgsql-general by date:

Previous
From: inspector morse
Date:
Subject: How to read refcursor column's using string column name?
Next
From: Josh Kupershmidt
Date:
Subject: Re: reltoastidxid altenates in postgresql 9.4