Ver Mensaje Individual
  #1  
Antiguo 08-06-2007
Val Val is offline
Miembro
 
Registrado: feb 2007
Posts: 51
Reputación: 20
Val Va por buen camino
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
Responder Con Cita