LEFT OUTER JOIN con INNER JOIN

22/04/2005 - 17:59 por Carlos Alfonso García | Informe spam
Hola a todos: Tengo la siguiente consulta:

SELECT
e.Cod_Titu,
e.Des_Titu,
m.Cod_TituContinuo
FROM
om_Espec e,
om_EspecMercado m,
om_otrOrigenes o
WHERE
e.cod_titu *= m.cod_titu
AND m.otr_origen = o.otr_origen

Cuando la ejecuto aparece:
Servidor: mensaje 303, nivel 16, estado 1, línea 1
La tabla 'om_EspecMercado' es un miembro interno de una
cláusula de combinación externa, lo que no está permitido
si la tabla forma también parte de una cláusula de
combinación ordinaria.

Si no puedo de esa forma, cómo podría hacerlo ? Gracias
por sus comentarios
 

Leer las respuestas

#1 Alejandro Mesa
22/04/2005 - 18:09 | Informe spam
Carlos,

Te recomiendo que no uses mas el viejo estilo de hacer joins, usa el nuevo
estilo (ANSI)(inner and left / right outer join). El viejo estilo tiende a
confundir y tambien puede arrojar datos no esperados sobre todo cuando se
trata de left / right outer joins.

SELECT
e.Cod_Titu,
e.Des_Titu,
m.Cod_TituContinuo
FROM
om_Espec as e
left join
(
om_EspecMercado as m
inner join
om_otrOrigenes as o
on m.otr_origen = o.otr_origen
)
on e.cod_titu = m.cod_titu;


AMB


"Carlos Alfonso García" wrote:

Hola a todos: Tengo la siguiente consulta:

SELECT
e.Cod_Titu,
e.Des_Titu,
m.Cod_TituContinuo
FROM
om_Espec e,
om_EspecMercado m,
om_otrOrigenes o
WHERE
e.cod_titu *= m.cod_titu
AND m.otr_origen = o.otr_origen

Cuando la ejecuto aparece:
Servidor: mensaje 303, nivel 16, estado 1, línea 1
La tabla 'om_EspecMercado' es un miembro interno de una
cláusula de combinación externa, lo que no está permitido
si la tabla forma también parte de una cláusula de
combinación ordinaria.

Si no puedo de esa forma, cómo podría hacerlo ? Gracias
por sus comentarios

Preguntas similares