Yo creí que cambiaste de criterios de búsqueda:
1)
Cita: los usuarios de la empresa de codigo 3 que no estan en la tabla usuario_auditoria agregándole la condicion de que aparte de ser de la empresa 3 , el num_aud sea 6 (por ejemplo)
Imposible: pues pides que no estén en la tabla usuario_auditoria y luego exiges que el num_aud = 6, algo que tendría que aparecer en la tabla usuario_auditoria. Por tanto, nunca te devolverá nada. Ya te lo ha dicho gnzsoloyo.
2)
Cita: ahora si quiero que la consulta me retorne los usuarios de la empresa 3 que no estan asignados a una auditoria especifica por ejemplo la 10
Aquí pensé que habías cambiado de criterio y que buscabas todos los de la empresa 3 que no están asignados a a auditoria 10, pero que, como es lógico, tenían datos en la tabla auditoria_usuario, es decir, estaban asignados a otras auditorias. Con la última consulta que te propuse (la que no tiene el null e incluso y en la que he cambiado el LEFT JOIN por INNER JOIN), sale el Usuario6, pues pertenece a la empresa 3 y tiene como num_aud el 11. Pero tampoco esa consulta mía resuelve bien todos los casos, pues si el usuario 6 también tuviera como num_aud el 10, seguiría saliendo. Para lo que yo he entendido es mejor usar un
Código MySQL:
Ver original U.cod_usu,
U.nombre
usuarios U
LEFT JOIN usuario_auditoria UA
on U.cod_usu
= UA.cod_usu
Como ves, el problema que tienes no es tanto la consulta en sí como que la lógica de búsqueda pueda ofrecerte resultados.