Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.databases.postgresql > #593

Re: Returning a table in SQL

From "AP" <unixpronospam@verizon.net>
Newsgroups comp.databases.postgresql
Subject Re: Returning a table in SQL
Date 2014-08-27 16:37 -0400
Organization Netfront http://www.netfront.net/
Message-ID <ltlfj0$1702$1@adenine.netfront.net> (permalink)
References <ltignr$1hgl$1@adenine.netfront.net> <c644cpF2g32U1@mid.individual.net>

Show all headers | View raw


Actually, I figured it out :

with report as (select some_report('Customer','2014-08-01','2014-08-08') cr)
  select
    (cr).field1,
    (cr).field2,
    (cr).field3
  from report;

gives three separated columns.

WITH clause is for clarity solely

"Harry Tuttle"  wrote in message news:c644cpF2g32U1@mid.individual.net...

AP wrote on 26.08.2014 19:39:
> Dear USENET,
>
> If I have a function that returns a table , such as
>
> create function some_report(in param1 text) returns table(rec1 integer, 
> rec2 text) as
> $body$
>     select blablabla from table1;
> $body$ language 'sql'
>
> with report as (select some_report('Customer','2014-08-01','2014-08-08') )
> select * from report
>
> still returns me a table with one column into which all record fields are 
> packed.
>
> How do I access rec1 and rec2 individually in such a case ?
>
> Thank you all in advance !
>

You need to use the function like a table if it returns a table:

with report as (
     select *
     fromsome_report('Customer','2014-08-01','2014-08-08')
)
select *
from report 


---
This email is free from viruses and malware because avast! Antivirus protection is active.
http://www.avast.com


--- news://freenews.netfront.net/ - complaints: news@netfront.net ---

Back to comp.databases.postgresql | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Returning a table in SQL "AP" <unixpro-nospam@verizon.spam.net> - 2014-08-26 13:39 -0400
  Re: Returning a table in SQL Harry Tuttle <SOZRBLNTLEEE@spammotel.com> - 2014-08-26 21:10 +0200
    Re: Returning a table in SQL Robert Klemme <shortcutter@googlemail.com> - 2014-08-26 22:28 +0200
      Re: Returning a table in SQL Harry Tuttle <SOZRBLNTLEEE@spammotel.com> - 2014-08-26 23:34 +0200
        Re: Returning a table in SQL Robert Klemme <shortcutter@googlemail.com> - 2014-08-27 08:36 +0200
    Re: Returning a table in SQL "AP" <unixpronospam@verizon.net> - 2014-08-27 16:37 -0400
      Re: Returning a table in SQL Harry Tuttle <SOZRBLNTLEEE@spammotel.com> - 2014-08-28 17:51 +0200
        Re: Returning a table in SQL Robert Klemme <shortcutter@googlemail.com> - 2014-08-28 21:45 +0200
        Re: Returning a table in SQL Jasen Betts <jasen@xnet.co.nz> - 2014-08-30 05:45 +0000
        Re: Returning a table in SQL "AP" <unixpronospam@verizon.net> - 2014-09-01 03:02 -0400
          Re: Returning a table in SQL Jasen Betts <jasen@xnet.co.nz> - 2014-09-01 10:56 +0000
            Re: Returning a table in SQL "AP" <unixpronospam@verizon.net> - 2014-09-04 02:57 -0400
              Re: Returning a table in SQL Jasen Betts <jasen@xnet.co.nz> - 2014-09-04 11:21 +0000
  Re: Returning a table in SQL Lennart Jonsson <erik.lennart.jonsson@gmail.com> - 2014-08-27 19:33 +0200

csiph-web