From: Michael Fuhr <mike@fuhr.org>
To: Heikki Linnakangas <heikki@enterprisedb.com>
Cc: Marcin Stępnicki <mstepnicki@gmail.com>
Cc: pgsql-performance@postgresql.org
Subject: Re: one column from huge view
Date: Thu, 12 Jul 2007 06:51:36 -0600
Message-ID: <20070712125136.GA37198@winnie.fuhr.org> (raw)
In-Reply-To: <4695EB62.7060307@enterprisedb.com>
References: <f74p19$1gb$1@sea.gmane.org>
<4695EB62.7060307@enterprisedb.com>
On Thu, Jul 12, 2007 at 09:50:42AM +0100, Heikki Linnakangas wrote:
> Marcin Stępnicki wrote:
> >Let's say I've got a view with 100 columns and 1mln rows; some of them are
> >calculated "on the fly". For some reason I want only one column from
> >this view:
> >
> >select col1 from huge_view;
> >
> >Now, does PostgreSQL skip all the calculations from other columns and
> >executes this query faster then select * from huge_view?
>
> In simple cases, yes. But for example, if you have a LEFT OUTER JOIN in
> the view, the join is performed even if your query doesn't return any
> columns from the outer relation. Also, if the calculation contains
> immutable functions, it's not skipped.
Don't you mean "if the calculation contains VOLATILE functions,
it's not skipped"?
--
Michael Fuhr
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: mike@fuhr.org, heikki@enterprisedb.com, mstepnicki@gmail.com
Subject: Re: one column from huge view
In-Reply-To: <20070712125136.GA37198@winnie.fuhr.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox