Bueno, he probado y no me vale.
Hay una cuarta tabla en discordia.
La siguiente consulta me va perfecta, pero me falta la columna Precio:
Código MySQL:
Ver originalSELECT resumen.idProducto
, tabla_seleccionados.qty_reserved
,Tabla_Comprados.qty_purch
FROM resumen
,tabla_seleccionados
, tabla_comprados
and resumen.idProductoCompra
=TablaSeleccionados.idProductoCompra
(+) and resumen.idProductoCompra
=TablaComprados.idProductoCompra
(+)
Resultado
idProducto | Qty_Reserved | Qty_purch
Ahora quiero agregar la columna Unit_price que se obtiene de TablaProductos.
Agregando
Código SQL:
Ver originalSELECT resumen.idProducto, tabla_seleccionados.qty_reserved,Tabla_Comprados.qty_purch,TablaProductos.unit_price FROM resumen,tabla_seleccionados, tabla_comprados, TablaProductos
WHERE resumen.idCompra=1
AND resumen.idProductoCompra =TablaSeleccionados.idProductoCompra (+)
AND resumen.idProductoCompra =TablaComprados.idProductoCompra (+)
AND TablaSeleccionados.stm_auto_key = TablaProductos.stm_auto_key (+)
va perfecto.
--------------------------
Pero al agregar el precio de los comprados me da un error.
ORA-01417: a table may be outer joined to at most one other table
Código SQL:
Ver originalSELECT resumen.idProducto, tabla_seleccionados.qty_reserved,Tabla_Comprados.qty_purch,TablaProductos.unit_price FROM resumen,tabla_seleccionados, tabla_comprados, TablaProductos
WHERE resumen.idCompra=1
AND resumen.idProductoCompra =TablaSeleccionados.idProductoCompra (+)
AND resumen.idProductoCompra =TablaComprados.idProductoCompra (+)
AND TablaSeleccionados.stm_auto_key = TablaProductos.stm_auto_key (+)
AND TablaComprados.stm_auto_key = TablaProductos.stm_auto_key (+)
--------------------------
He probado también con
Código SQL:
Ver originalAND (TablaSeleccionados.stm_auto_key = TablaProductos.stm_auto_key (+)
OR
TablaComprados.stm_auto_key = TablaProductos.stm_auto_key (+))
y me da error
ORA-01719: outer join operator (+) not allowed in operand of OR or IN
Sabes cómo solucionarlo?