Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/04/2012, 08:38
edos_gn
 
Fecha de Ingreso: abril-2012
Ubicación: Colombia
Mensajes: 10
Antigüedad: 12 años, 7 meses
Puntos: 0
Pregunta Problema con relaciones entre tres tablas

Buenos dias, les cuento mi problema tengo tres tablas diseñadas asi:

producto{
cod_producto,
refrencia,
nombre,
valor,
peso,
cod_proveedor
cod_categoria
}

sede{
cod_sede,
nombre_sede
}

producto_sede{
cod_producto_sede,
cod_producto,
cod_sede
cantidad
}

Lo que sucede es que me pidieron que pudiera almacenar un producto con X caracteristicas, pero que tomara la cantidad dependiendo de cada sede, pero sin tener que agregar dos veces el producto cambiando la sede, asi que opte por realizar una tabla en la que se relacione la sede con el producto y la cantidad que se encuentra en dicha sede, ahora el problema es que quiero que cuando la tabla este sin datos me muestre los datos del producto y su sede pero con la cantidad en 0.

Finalmente logre que me mostrara parte de lo que quiero asi:

SELECT * FROM categoria c, proveedor pv, medida m, producto p LEFT OUTER JOIN
(SELECT s.NOMBRE_SEDE, ps.COD_PRODUCTO FROM sede s
LEFT OUTER JOIN producto_sede ps ON s.COD_SEDE=ps.COD_SEDE) AS codPro
ON codPro.COD_PRODUCTO=p.COD_PRODUCTO WHERE c.COD_CATEGORIA=p.COD_CATEGORIA AND pv.COD_PROVEEDOR=p.COD_PROVEEDOR AND m.COD_MEDIDA=p.COD_MEDIDA
AND(p.REFERENCIA_PRODUCTO LIKE '%A25DH001%')

Osea quiero que se muestren los datos del producto mas el nombre de sede y cantidad repitiendose por el numero de sedes agregadas aunque no tenga registros en la tabla producto_sede que en tal caso validare para que me muestre 0.
Hasta ahora solo logro con la consulta anterior que me muestre los datos del producto una sola vez y sin el nombre de la sede. Cuando deberian ser dos registros cada uno con los datos del producto mas el nombre de la sede y la cantidad.

Espero puedan ayudarme muchas gracias de ante mano.