Search Postgresql Archives

Re: best way to query

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



	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

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux