| From: | Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com> | 
|---|---|
| To: | The Hermit Hacker <scrappy(at)hub(dot)org> | 
| Cc: | pgsql-sql(at)postgresql(dot)org, pgsql-hackers(at)postgresql(dot)org | 
| Subject: | Re: LEFT JOIN ... | 
| Date: | 2001-06-18 18:18:49 | 
| Message-ID: | Pine.BSF.4.21.0106181110080.85469-100000@megazone23.bigpanda.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers pgsql-sql | 
I think that using INNER JOIN between nl and n (on n.nid=nl.nid) or
joining those tables in a subquery might work.
On Mon, 18 Jun 2001, The Hermit Hacker wrote:
> Is there some way to write the above so that it evaluates:
> 
>          WHERE (n.type = 'A' OR n.type = 'N' OR n.type = 'H' OR n.type = 'C')
>            AND (nl.id = 15748 AND contact_lvl = 'company')
>            AND n.nid = nl.nid
> 
> first, so that it only has to do the LEFT JOIN on the *one* n.nid that is
> returned, instead of the 86736 that are in the table?
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Alex Pilosov | 2001-06-18 18:23:08 | Re: (Really) Re: [PATCH] inet << indexability | 
| Previous Message | Bruce Momjian | 2001-06-18 18:14:00 | Re: (Really) Re: [PATCH] inet << indexability | 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | The Hermit Hacker | 2001-06-18 18:26:41 | Re: LEFT JOIN ... | 
| Previous Message | Tom Lane | 2001-06-18 18:07:38 | Re: LEFT JOIN ... |