Re: Optimising Union Query.
От | ptjm@interlog.com (Patrick TJ McPhee) |
---|---|
Тема | Re: Optimising Union Query. |
Дата | |
Msg-id | 3d014hF6ps78jU2@uni-berlin.de обсуждение исходный текст |
Ответ на | Optimising Union Query. (Rob Kirkbride <rob.kirkbride@thales-is.com>) |
Ответы |
Re: Optimising Union Query.
|
Список | pgsql-general |
In article <4268F322.1040106@thales-is.com>, Rob Kirkbride <rob.kirkbride@thales-is.com> wrote: % I've done a explain analyze and as I expected the database has to check % every row in each of the three tables below but I'm wondering if I can This is because you're returning a row for every row in the three tables. % select l.name,l.id from pa i,locations l where i.location=l.id union % select l.name,l.id from andu i,locations l where i.location=l.id union % select l.name,l.id from idu i,locations l where i.location=l.id; You might get some improvement from select name,id from locations where id in (select distinct location from pa union select distinct location from andu union select distinct location from idu); this query might be helped by an index on location in each of those three tables, but probably not. -- Patrick TJ McPhee North York Canada ptjm@interlog.com
В списке pgsql-general по дате отправления: