Re: VIEWs with aggregate functions

From: Paul Makepeace <postgresql(dot)org(at)paulm(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSQL Novice <pgsql-novice(at)postgresql(dot)org>
Subject: Re: VIEWs with aggregate functions
Date: 2004-10-19 12:12:27
Message-ID: 20041019121227.GB22444@mythix.realprogrammers.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

Je 2004-10-14 05:09:16 +0100, Tom Lane skribis:
> Paul Makepeace <postgresql(dot)org(at)paulm(dot)com> writes:
> > CREATE VIEW weekly_bar_info AS
> > SELECT bar_name,
> > MIN(bar_date) AS earliest_date, MAX(bar_date) AS latest_date,
> > MIN(bar) as min_bar, MAX(bar) as max_bar
> > FROM bar_data
> > WHERE valid_weekly='t'
> > GROUP BY bar_name
>
> > What I'd like to be able do is WHERE bar_name = ? AND bar_date >= ?
> > i.e. select over a date range but that isn't directly possible with the
> > VIEW as is.
>
> You can certainly select on bar_name, but you can't select on bar_date
> because the view doesn't expose bar_date, only some statistics about
> it. I suppose that you want the WHERE clause to filter the bar_data
> rows before the aggregation happens (is that correct??) and you just
> can't do that with a view.

Yes, that's right, that is indeed what I was after.

> If it worked like that then the WHERE clause
> would not simply limit the set of rows returned by the view but actually
> change some of the values in those rows, and that's totally contrary to
> the SQL worldview.
>
> I think you're stuck with writing it out as one big query :-(

OK thanks for the confirmation - I suspected that was the case but
wanted to be sure!

Cheers, Paul

> regards, tom lane

--
Paul Makepeace .............................. http://paulm.com/inchoate/

"What is the origin of happiness? Badly spelt."
-- http://paulm.com/toys/surrealism/

In response to

Browse pgsql-novice by date

  From Date Subject
Next Message Paul Makepeace 2004-10-19 12:18:48 Finding last day in a month
Previous Message Martin Foster 2004-10-19 02:43:31 Administrative lockout