prueba con Not In a ver si te funciona, no podria probar pero yo tengo una consulta de la siguiente forma
Código MySQL:
Ver original$materias1= mysql_query("SELECT * FROM materias, preins where preins.codigo = $codigo and preins.cod_comp = materias.cod_comp and preins.cod_comp NOT IN (SELECT cod_comp FROM semestre where semestre.codigo = $codigo) order by cod_mat",$link);
y me funciona lo que tu quieres hacer osea mostrar los que no coinciden entre ambas tablas