Re: [Feature request] variable declaration of anonymous composite data type in PL/pgSQL

Поиск
Список
Период
Сортировка
От Andrew Dunstan
Тема Re: [Feature request] variable declaration of anonymous composite data type in PL/pgSQL
Дата
Msg-id 4B8C56E5.1030801@dunslane.net
обсуждение исходный текст
Ответ на [Feature request] variable declaration of anonymous composite data type in PL/pgSQL  (Maciej Mrozowski <reavertm@gmail.com>)
Список pgsql-hackers

Maciej Mrozowski wrote:
> Hello,
>
> Not sure whether it's appropriate list for feature requests though..
> Would it be suitable to implement such variable declarations in PL/pgSQL so 
> that following (or similar) constructs would be possible?
>
> DECLARE
>     tmpStruct (name varchar, foo integer, bar boolean)[] := array[
> ('somename', 1, true),
> ('someothername', 2, false),
> ('yetothername', 3, true)
>     ];
> BEGIN
> ...
>
> Or maybe it is possible already? (I know there are temporary tables but it's 
> not quite the same). The goal to have temporary local random access data 
> structures (like lookup tables), similar to those in C.
>
>   


There have certainly been time I could have used this. You can get close 
using VALUES:
   create or replace function foo()   returns void   language plpgsql as   $$
   declare       rec record;   begin       for rec in         select *         from (values
(1::int,'a'::text,'2009-08-06'::date),            (5,'wxy','1998-12-23'))          as x (a , b , c )       loop
 raise notice 'a: %, b: %, c: %',               rec.a + 1,               length(rec.b),               rec.c + interval
'1day';       end loop;   end;
 
   $$;

cheers

andrew


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

Предыдущее
От: Merlin Moncure
Дата:
Сообщение: Re: scheduler in core
Следующее
От: Tom Lane
Дата:
Сообщение: Re: scheduler in core