Oracle - DUDA CONSULTA

 
Vista:

DUDA CONSULTA

Publicado por JM (4 intervenciones) el 27/12/2004 13:20:11
ESTOY INTENTANDO HACER ESTA CONSULTA SOBRE TRES TABLAS, EL PROBLEMA QUE NO ENCUENTRO LA

FORMA OPTIMA DE HACERLO...
LAS TABLAS SON:
**TABLA B
ID_B
1
2
3
4

**TABLA I
TIPO ID_I ID_L
M 1 1
B 1 2
M 2 3
B 3 4

**TABLA L
TEX ID_L
AA 1
BB 2
CC 3
DD 4

Y EL RESULTADOS ES EL SIGUIENTE:
ID_B TEXT_M TEXTO_B
1 AA BB
2 CC
3 DD

LA FORMA QUE ESTOY HACIENDOLO ES:
SELECT ID_B, M, B
FROM B,
(SELECT ID_B, L AS M
FROM I I1, L L1
WHERE I.ID_L = L.ID_L AND
I.BAJA IS NULL AND
I.TIPO = 'M') ID1,
(SELECT ID_B, L AS B
FROM I , L
WHERE I.ID_L = L.ID_L AND
I.BAJA IS NULL AND
I2.LTIPO ç= 'B') ID2
WHERE B.ID_B = ID1.ID_B (+) AND
B.ID_B = ID2.ID_B (+) AND
B.BAJA IS NULL

ALGUIEN VE UNA FORMA MEJOR... GRACIAS.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder