Search Postgresql Archives

Re: INSERT with a composite columnt from query

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Reg Me Please wrote:
> I have two table like these:
> 
> create table compo (
>   t text,
>   i int
> );
> 
> create table tab (
>   x int,
>   c compo
> );
> 
> Then I have a function like this:
> 
> create or replace function f_compo()
> returns setof compo as $body$
> ...
> $body$ language sql stable;
> 
> 
> What I'd need to do is to insert the results from f_compo() into
> the table TAB along with a value x.
> 
> I expected somthing like this to work:
> 
> insert into tab
>   select 42,row( c.* ) from f_compo() c;
> 
> But I get
> ERROR:  cannot cast type record to compo

The whole exercise seems a bit pointless, but you could do it like this:

INSERT INTO tab SELECT 42, CAST (c AS compo) FROM f_compo() c;

Yours,
Laurenz Albe

---------------------------(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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux