Обсуждение: PL/PgSQL: selects into strings

Поиск
Список
Период
Сортировка

PL/PgSQL: selects into strings

От
Virgilio Sanz
Дата:
Hi list,

I'm just added to the list and I'm not sure whether the following is a
FAQ or not possible. Anyway, here it goes:
Is there a way to execute a query stored in a string?

I mean, something like:

function test(text) as returns opaque as '
declarev_weekday alias for $1;s_qry text;rec record;
begins_qry = ''select field1,field2, '' || v_weekday || '' from t_diary'';for rec in exec_sql(s_qry)
--               ^ this is what I'm looking for...
--        [do what is needed]loopend loop;
end;
' language 'plpgsql';

Thanks in advance,
Virgilio

--
Virgilio Sanz               vsanz@el-mundo.net virgilio.sanz@el-mundo.es
Diario el Mundo en Internet http://www.el-mundo.es
Email me with "send key pub" on subject to get my public key
Kime's Law for the Reward of Meekness:Turning the other cheek merely ensures two bruised cheeks.

Re: [SQL] PL/PgSQL: selects into strings

От
wieck@debis.com (Jan Wieck)
Дата:
> Hi list,
>
> I'm just added to the list and I'm not sure whether the following is a
> FAQ or not possible. Anyway, here it goes:
>
>    Is there a way to execute a query stored in a string?
>
> I mean, something like:
>
> function test(text) as returns opaque as '
> declare
>    v_weekday alias for $1;
>    s_qry text;
>    rec record;
> begin
>    s_qry =3D ''select field1,field2, '' || v_weekday || '' from t_diary'';
>    for rec in exec_sql(s_qry)
> --            ^ this is what I'm looking for...
> --      [do what is needed]
>    loop
>    end loop;
> end;
> ' language 'plpgsql';

    PL/pgSQL  doesn't  support  it. Could get implemented, in the
    mean time look at PL/Tcl, it can do it already.


Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#========================================= wieck@debis.com (Jan Wieck) #