Re: View columns calculated - Mailing list pgsql-performance

From Tom Lane
Subject Re: View columns calculated
Date
Msg-id 26711.1081891416@sss.pgh.pa.us
Whole thread Raw
In response to View columns calculated  ("Peter Darley" <pdarley@kinesis-cem.com>)
Responses Re: View columns calculated  (Enrico Weigelt <weigelt@metux.de>)
List pgsql-performance
"Peter Darley" <pdarley@kinesis-cem.com> writes:
>     I have a question about views:  I want to have a fairly wide view (lots of
> columns) where most of the columns have some heavyish calculations in them,
> but I'm concerned that it will have to calculate every column even when I'm
> not selecting them.  So, the question is, if I have 5 columns in a view but
> only select 1 column, is the system smart enough to not calculate the unused
> columns,

It depends on what the rest of your view looks like.  If the view is
simple enough to be "flattened" into the parent query then the unused
columns will disappear into the ether.  If it's not flattenable then
they will get evaluated.  You can check by seeing whether an EXPLAIN
shows a separate "subquery scan" node corresponding to the view.
(Without bothering to look at the code, an unflattenable view is one
that uses GROUP BY, DISTINCT, aggregates, ORDER BY, LIMIT, UNION,
INTERSECT, EXCEPT, probably a couple other things.)

            regards, tom lane

pgsql-performance by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: configure shmmax on MAC OS X
Next
From: Pailloncy Jean-Gérard
Date:
Subject: