Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

what is less resource-intensive, WHERE id IN or INNER JOIN?


  • From: Miernik <public(at)public(dot)miernik(dot)name>
  • To: pgsql-performance(at)postgresql(dot)org
  • Subject: what is less resource-intensive, WHERE id IN or INNER JOIN?
  • Date: Thu, 31 Jul 2008 00:11:58 +0200
  • Message-id: <20080730221158.5323.1.NOFFLE@turbacz.local> <text/plain>

AFAIK, provided bar is UNIQUE in table2 (e.g. is a PRIMARY KEY) the two
queries will give the same result:

SELECT foo, id FROM table1 WHERE id IN (SELECT id FROM table2);

SELECT foo, id FROM table1 INNER JOIN table2 USING (id);

Given table1 has about 100k rows, and table2 about 100 rows, which one
should be faster, less resource intensive, use less RAM, disk access, etc?
Are there any other even better ways to acomlish the same query?

Using 8.3.3 on a 48 MB RAM Xen.

-- 
Miernik
http://miernik.name/




Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group