Hola andruxand:
Creo que si pusieras algunos datos de ejemplo sería más fácil de entender qué es lo que necesitas, pero si entendí correctamente tú ultima explicación podrías hacer más o menos esto:
Código MySQL:
Ver original+------+-------------+
| idX | descripcion |
+------+-------------+
| 1 | uno |
| 2 | dos |
| 3 | tres |
| 4 | cuatro |
+------+-------------+
+------+------+------------------+--------+
| idY | idX | otra_descripcion | estado |
+------+------+------------------+--------+
| 10 | 1 | otro uno | 0 |
| 20 | 2 | otro dos | 1 |
+------+------+------------------+--------+
-> WHERE tx.idX
= ty.idX
AND ty.estado
= 0); +------+-------------+
| idX | descripcion |
+------+-------------+
| 1 | uno |
| 3 | tres |
| 4 | cuatro |
+------+-------------+
Observa que en la tablaY existe el idX = 1, pero su estado es igual a 0, para el caso de los idX 3, y 4 estos no existen en la tablaY... de tal suerte que el único registro que no se muestra es el idX = 2, ya que este SI EXISTE en la tablaY y además tiene un estado distinto a 0.
Si esto no te sirve puedes tratar de poned datos como lo hice yo, para explicar mejor tu problema.
Código:
EDITADO: es mejor la opción del LEFT JOIN, pero igual y te sirve para conocer otro modo de resolver el problema.
Saludos
Saludos
Leo.