Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/02/2012, 07:09
portela85
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 13 años, 1 mes
Puntos: 3
Consulta no coincidentes

Buenas tardes,

no consigo realizar una consulta para buscar los datos que están en una tabla, pero no en la otra.

Tengo una tabla con un listado de consultores, identificados por un Id único.

Tengo otra tabla donde estos consultores reportar los trabajos que van realizando y en esa tabla se guarda el identificador único del consultor para ver quién lo ha realizado.

Quiero hacer una consulta que me saque un listado de los consultores que no han introducido datos en la tabla de trabajos. Es decir que busque los que sí han introducido datos y compare el listado con la tabla de consultores y me devuelva los que no coinciden.

Dejo algunos intentos que he hecho. Si es necesario pongo la estructura de las tablas.
Primer intento
Código:
SELECT consultores.consultor AS consultor FROM consultores LEFT JOIN trabajos ON consultores.Ident_consultor = trabajos.consultores_Ident_consultor 
WHERE (((trabajos.f_inicio)>='$fechainicio' And (trabajos.f_inicio)<='$fechafin'));
Segundo intento
Código:
SELECT consultores.Ident_consultor, consultores.consultor AS consultor, trabajos.f_inicio, trabajos.f_fin, trabajos.consultores_Ident_consultor FROM consultores, trabajos
WHERE consultores.Ident_consultor NOT IN (select trabajos.consultores_Ident_consultor trabajos WHERE ((consultores.Ident_consultor = trabajos.consultores_Ident_consultor) AND (trabajos.f_inicio)>='$fechainicio' And (trabajos.f_inicio)<='$fechafin'));
Tercer intento
Código:
SELECT consultores.consultor from consultores, trabajos WHERE (((consultores.Ident_consultor = trabajos.consultores_Ident_consultor)
AND (trabajos.consultores_Ident_consultor IS NULL)) AND ((trabajos.f_inicio)>='$fechainicio' And (trabajos.f_inicio)<='$fechafin')) ;
Gracias y un saludo!