Re: Function as Phantom Field - Mailing list pgsql-general

From Tomas Berndtsson
Subject Re: Function as Phantom Field
Date
Msg-id 804s2hb1wa.fsf@junk.nocrew.org
Whole thread Raw
In response to Function as Phantom Field  (Charles Tassell <ctassell@isn.net>)
List pgsql-general
Charles Tassell <ctassell@isn.net> writes:

> I have a database like this:
>
> CREATE TABLE articles (
>          article_id      serial primary key,
>          title           text
> );
>
> CREATE TABLE pages (
>          article_id      integer,
>          page            text
> );
>
> And I want to be able to do a
>
> SELECT article_id, title, count_pages(article_id) FROM articles
>
> Now, I have already written the count_pages function (it's just a count(*)
> where article_id = $1) but I don't know how to do the SELECT in one pass,
> is there some way I can do this with triggers or is there a special field
> name I can use to specify the current article_id as the function argument?

I'm not sure I understand what you want to do, but maybe a GROUP BY is
what you're looking for:

SELECT article_id, title, count_pages(article_id)
FROM articles
GROUP BY article_id, title


Tomas

pgsql-general by date:

Previous
From: Charles Tassell
Date:
Subject: Function as Phantom Field
Next
From: Dan Moschuk
Date:
Subject: Re: Re: [HACKERS] My new job