Pourquoi INNER JOIN n'est pas égal (! =)

Lorsque j'exécute la requête suivante:

SELECT * FROM `table1` 
 INNER JOIN table2 ON table2.number = table1.number

- Je obtenir le résultat en moins de 2 secondes. Il y a environ 6 millions de dossiers dans table2 et 1 million de disques dans table1

table2.number et table1.number sont indexés.

Maintenant je veux obtenir une liste de nombres qui n'existent pas. Comme ceci:

SELECT * FROM `table1` 
 INNER JOIN table2 ON table2.number != table1.number

Cela prend-il pour toujours et toujours suspendu.. Comment pour résoudre ce problème?

source d'informationauteur I'll-Be-Back