|
Consulta complicadilla en Firebird
Hola!
Tengo las siguientes tablas con los siguientes campos y contenido
TABLA1
Idtabla1 campo1
1 1
2 1
3 4
4 6
5 7
TABLA2
idtabla2 campoA idtabla1
1 1 1
2 1 4
3 0 1
4 0 3
5 0 2
idtabla* es la clave principal de cada una de las tablas y en Tabla2 tengo idtabla1 como clave foranea.
Necesito hacer una consulta que me devuelva una fila o más filas por cada fila de la tabla1 en la que campo1>3 (lo que me hace pensar en un outer join) pero en la tabla2 solo me interesan aquellas filas en las que campoA=0
Desearia que me devolviera:
Idtabla1 campo1 idtabla2 campoA idtabla1
3 4 4 0 3
5 7 null null null
Si hago algo del tipo:
SELECT * FROM tabla1 right outer join tabla2 on tabla1.idtabla1=tabla2=idtabla2
where tabla1.campo1>3 and tabla2.campoA=0
no me devuelve la linea del idtabla1=5 y si pongo (tabla2.campoA=0 or tabla2.campoA) entonces ya no me devuelve nada
¿Alguna sugerencia?
Gracias
|