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

    Rails

    Dealing with multiple languages with inflections

    How to have your site deal with multiple languages in inflections

    Threat Intelligence JavaScript

    Threat Intelligence Issue 5

    Issue 5 of our Threat Intelligence information