Here's an example:

        create view master_detail
        as select * from master 
        left join detail on (master.detail_key=detail.key);

I noticed that PostgreSQ performs join even when I execute

        select some_master_fields from master_detail;

but there exists an unique index on detail.key, so above query
gives the same result as

        select some_master_fields from master;

but with much loss in performance, of course.

This problem emerged when I replaced renundant table in poorly
designed database with two tables, view and set of rules.
I thought that I was very clever, because I didn't have to 
replace any code in applications using this database, but
it seems that there's always a catch...

May I have hope that such optimisation will be included in
TODO list in near future?

-- 
   <><><><><><><><><><><><><><><><><><><><><>
   <>      [EMAIL PROTECTED]      <>
   <>  http://rainbow.mimuw.edu.pl/~robson <>
   <><><><><><><><><><><><><><><><><><><><><>

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

Reply via email to