From: | ml(at)ft-c(dot)de |
---|---|
To: | pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | type bug? |
Date: | 2021-10-06 03:50:25 |
Message-ID: | 108585f3e84fc2f98e7ab7776d745ca32b7c6dc1.camel@ft-c.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hello,
there is a bug with types in functions. Here is an example:
--drop type xyz;
create type xyz as ( x numeric, y numeric, z numeric );
--drop table test_xyz ;
create table test_xyz ( a int, b xyz, c xyz );
insert into test_xyz values
( 1,(11.1, 12.3, 14.5 ), (22.2, 22.3, 24.5 ) ) ;
--drop function test_xyz() ;
create function test_xyz() returns table ( a xyz, b xyz) as
$$
select b, c from test_xyz ;
$$ language sql ;
--drop function test_xyz2() ;
create function test_xyz2() returns table ( b xyz) as
$$
select b from test_xyz ;
$$ language sql ;
--drop function test_xyz3() ;
create function test_xyz3() returns table ( b xyz) as
$$
declare
bb xyz;
cc xyz;
begin
select b, c into bb, cc from test_xyz ;
return bb ;
end;
$$ language plpgsql ;
-- ------
select * from test_xyz() ;
select * from test_xyz2() ; -- 3 columns, but 1 should be correct?
select b from test_xyz2() ; -- error
select x from test_xyz2() ; -- never declared column
select * from test_xyz3() ; -- compiling error
-- ------
(I am not a member of the pg-developer mailinglist. )
Franz
From | Date | Subject | |
---|---|---|---|
Next Message | Ron | 2021-10-06 05:21:07 | Re: type bug? |
Previous Message | Israel Brewster | 2021-10-05 23:03:54 | Re: Growth planning |