select *
from people
where id not in
(
select id
from class_registration
)

In my experience, queries like the OUTER LEFT JOIN version posted earlier are usually much more efficient than NOT IN queries like the above. The planner seems to be pretty smart about turning (positive) IN queries into joins, but NOT IN queries usually turn into nested table scans, in my experience.

- John D. Burger
  MITRE


---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

              http://www.postgresql.org/docs/faq

Reply via email to