>>>>> "Alvaro" == Alvaro Herrera <[EMAIL PROTECTED]> writes:

    >> For instance, in the presence of a view or a subquery, does PG
    >> do a subquery to join transformation ?

    Alvaro> Yes, there are transformations of this sort, but they are
    Alvaro> not called query rewrite in the code's terminology, but
    Alvaro> "optimization" -- rewrite (rules and views) happens to the
    Alvaro> parsed statement, and the optimizer works on the output of
    Alvaro> rewriting.  So actually the optimizations happen whether
    Alvaro> there were or not rules or views.

Interesting .. so these are rule-based then ? Not cost-based ?

I understand that there is a cost-based optimizer anyway that does the
planning and selects the right plan .. but does this come _after_ all
these transformations ? Or does it happen along with the
transformations ? 

    Alvaro> The query's path is SQL -> parse -> rewrite -> optimize ->
    Alvaro> execute

Can you please point me to the code that indeed does such
transformations ? 

-- 
Pip-pip
Sailesh
http://www.cs.berkeley.edu/~sailesh



---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

Reply via email to