Re: best way to query

Поиск
Список
Период
Сортировка
От Daniel Verite
Тема Re: best way to query
Дата
Msg-id c2253cb4-fe3b-4f6a-8040-ab9c9b44c757@mm
обсуждение исходный текст
Ответ на best way to query  (Steve Clark <sclark@netwolves.com>)
Ответы Re: best way to query  (Steve Clark <sclark@netwolves.com>)
Список pgsql-general
    Steve Clark wrote:

> any way i have 2 table - A and B.
> each table has a key field and if a row is in B it should have a
> corresponding row in A - but theres
> the problem it doesn't for all the rows in B.
>
> So I want to do something like
> delete from B where key not in (select key from A order by key);
>
> The problem is there are about 1,000,000 rows in A and 300,000 rows
in
> B. I let the above run
> all night and it was still running the next morning. Does anyone have

> an idea of a better way.

An outer join is sometimes spectacularly more efficient for this
particular kind of query.

I'd suggest you try:

delete from B where key in
 (select B.key from B left outer join A on A.key=B.key
   where A.key is null)

--
 Daniel
 PostgreSQL-powered mail user agent and storage:
http://www.manitou-mail.org

В списке pgsql-general по дате отправления:

Предыдущее
От: Steve Clark
Дата:
Сообщение: Re: best way to query
Следующее
От: johnf
Дата:
Сообщение: Re: exporting postgre data