is General Bits Issue # 43 correct?

Поиск
Список
Период
Сортировка
От Avi Schwartz
Тема is General Bits Issue # 43 correct?
Дата
Msg-id FC8DEA7D-E72B-11D7-A5E9-000393AE5044@CFFtechnologies.com
обсуждение исходный текст
Список pgsql-general
In this issue the following statement is made:

"In plpgsql, you cannot run a dynamic SELECT statement and be able to
do anything with the selected data. You cannot assign the selected
value to a variable or return the selected value from the function. You
can, however, easily construct INSERT, UPDATE and DELETE statements as
well a DDL (Data Definition Language: CREATE, ALTER, etc.)"

This is not my experience.  For example, I am doing the following in my
code and it works just fine:

for v_tmp in execute ''select min(list_price) as price_selected_min,
max(list_price) as price_selected_max
    from table1
    where xx_id = '' || p_xx_id ||
    '' and date_deleted is null'' loop

    v_price_selected_min := v_tmp.price_selected_min;
    v_price_selected_max := v_tmp.price_selected_max;

end loop;

It works just fine for me.

I also can return result set using

for r in execute ''select statement'' loop
           return next r;
end loop;

Avi


В списке pgsql-general по дате отправления:

Предыдущее
От: Ron Johnson
Дата:
Сообщение: Re: need for in-place upgrades (was Re: State of
Следующее
От: Tom Lane
Дата:
Сообщение: Re: case-insensitive database