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
SI te fijas en tu penúltimo post, las condiciones que propones son excluyentes si pones un AND en el WHERE, por lo que esto:
Código MySQL:
Ver original U.cod_usu,
U.nombre
usuarios U
LEFT JOIN usuario_auditoria UA
on U.cod_usu
= UA.cod_usu
U.cod_empresa
=3 AND UA.Num_aud
!= 10;
forzosamente debe darte vacío, ya que la auditoria de la empresa 3, es precisamente la 10... la que estás eliminando. Y
no sirve poner "=" en este ejemplo, porque te estarías refiriendo a
la misma auditoría...
La solución es mas o menos sencilla: Necesitas que se cumpla una de dos condiciones: Que la empresa sea la 3,
o bien que la auditoría sea diferente de 10. Y un "o bien", es un OR:
Código MySQL:
Ver original U.cod_usu,
U.nombre
usuarios U
LEFT JOIN usuario_auditoria UA
on U.cod_usu
= UA.cod_usu
U.cod_empresa
=3 OR UA.Num_aud
!= 10;
El ejemplo, en definitiva no tiene mucho sentido, porque si pones los que trabajan en una auditoría para una empresa, y además el resto... ¿para qué haces la distinción?