Search code examples
mysqlsqlexcept

Compare two SQL tables and return missing ids?


I have two simple tables: (here only the "id" column)

table1:

id
1
2
3
4

table2:

id
2
4

the sql query should compare the two tables for missing "id" in table2 and return: 1,3

any ideas? :) TY


Solution

  • There are several ways to skin this cat:

    SELECT    table1.ID
    FROM      table1
    WHERE     table1.ID NOT IN(SELECT table2.ID FROM table2)
    

    Or you could use a left outer join:

    SELECT          table1.ID
    FROM            table1
    LEFT OUTER JOIN table2 ON table1.ID = table2.ID
    WHERE           table2.ID IS NULL