Thread: SELECT 1st field
Hi, I've spend some time checking the documentation but haven't been able to find what I'm looking for. I've got a function that returns a set of integers and a view that selects from the function. What I need is the ability to name the column in the view, ie. create function func(i int) returns setof integer as $$ ... ...code ... $$ language plpythonu volatile; create view v as select 1 as "id" from func(5); In other words I'd like to refer to the first (and only) field returned and give that an alias, in this case "id". In some SQL dialects you can use "select 1" to select the first field, "select 2" to select the 2nd field and so on. Any suggestions? regards, Jan
Try this create view v(id) as select * from func(5); if your function returns one column. 15.05.2012, 10:01, "Jan Bakuwel" <jan.bakuwel@greenpeace.org>: > Hi, > > I've spend some time checking the documentation but haven't been able to > find what I'm looking for. > I've got a function that returns a set of integers and a view that > selects from the function. > What I need is the ability to name the column in the view, ie. > > create function func(i int) returns setof integer as $$ > ... > ...code > ... > $$ language plpythonu volatile; > > create view v as select 1 as "id" from func(5); > > In other words I'd like to refer to the first (and only) field returned > and give that an alias, in this case "id". > > In some SQL dialects you can use "select 1" to select the first field, > "select 2" to select the 2nd field and so on. > > Any suggestions? > > regards, > Jan
When you select from function I think column name is the same as function name. So if function name is func query would be: SELECT func AS id FROM func(5); Sent from my Windows Phone From: Jan Bakuwel Sent: 15/05/2012 08:02 To: pgsql-sql@postgresql.org Subject: [SQL] SELECT 1st field Hi, I've spend some time checking the documentation but haven't been able to find what I'm looking for. I've got a function that returns a set of integers and a view that selects from the function. What I need is the ability to name the column in the view, ie. create function func(i int) returns setof integer as $$ ... ...code ... $$ language plpythonu volatile; create view v as select 1 as "id" from func(5); In other words I'd like to refer to the first (and only) field returned and give that an alias, in this case "id". In some SQL dialects you can use "select 1" to select the first field, "select 2" to select the 2nd field and so on. Any suggestions? regards, Jan
Jan Bakuwel <jan.bakuwel@greenpeace.org> writes: > What I need is the ability to name the column in the view, ie. > create view v as select 1 as "id" from func(5); I think what you're looking for is the ability to re-alias a column name, for example select id from func(5) as foo(id); regards, tom lane
Both works fine:
SELECT generate_series AS id FROM generate_series(1,5);
and
SELECT id FROM generate_series(1,5) AS foo(id);
Technically dont know is there any differenece...
Thanks,
Misa
2012/5/15 Tom Lane <tgl@sss.pgh.pa.us>
Jan Bakuwel <jan.bakuwel@greenpeace.org> writes:
> What I need is the ability to name the column in the view, ie.> create view v as select 1 as "id" from func(5);I think what you're looking for is the ability to re-alias a column name,
for example
select id from func(5) as foo(id);
regards, tom lane
--
Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-sql
When you select from function I think column name is the same as function name. So if function name is func query would be: SELECT func AS id FROM func(5); Sent from my Windows Phone From: Jan Bakuwel Sent: 15/05/2012 08:02 To: pgsql-sql@postgresql.org Subject: [SQL] SELECT 1st field Hi, I've spend some time checking the documentation but haven't been able to find what I'm looking for. I've got a function that returns a set of integers and a view that selects from the function. What I need is the ability to name the column in the view, ie. create function func(i int) returns setof integer as $$ ... ...code ... $$ language plpythonu volatile; create view v as select 1 as "id" from func(5); In other words I'd like to refer to the first (and only) field returned and give that an alias, in this case "id". In some SQL dialects you can use "select 1" to select the first field, "select 2" to select the 2nd field and so on. Any suggestions? regards, Jan
Hi Misa, Tom & msi77, On 16/05/12 00:21, Misa Simic wrote: > SELECT id FROM generate_series(1,5) AS foo(id); Thanks for the suggestions - all sorted! cheers, Jan