SQL snippet - Selecting from table a items that aren't in table b

How I found items that were present in one table but not another using SQL

Today I needed to select something from a table on the condition that the ID of the row in the table did not appear in another table.

I initially had to do this for a MySQL project, but it would equally work in Postgres or any SQL database.

Initially I thought this was going to be slightly difficult to do, or at least a bit convoluted but it turned out to not need that much code.

  SELECT table_a.id
  FROM table_a
  LEFT JOIN table_b ON table_a.id = table_b.aid
  WHERE table_b.aid IS NULL;

Since you are using a LEFT JOIN table_b.aid can return NULL values, and these are the ones you are looking for.

Recent posts View all

SEO

Google follows URLs in text

Today I learned that Google follows URLs even when they are plain text

Web Dev

Check in with your database

It pays to take a step back and look at how your database is set up every so often. You will often find quick wins and hidden tech debt.