[RESUELTO]Datos duplicados despues de calculos

Discute sobre las herramientas de la base de datos
Responder
jamunix
Mensajes: 2
Registrado: Mié Dic 03, 2008 11:46 pm

[RESUELTO]Datos duplicados despues de calculos

Mensaje por jamunix »

Hola a todos...

Tengo un pequeño inconveniente con el ejemplo de la base de datos que adjunto...
tengo 2 tablas relacionadas por el codigo, quiero hacer 2 calculos, uno en donde se muestre el total multiplicando la cantidad de productos vendidos por el precio (PVP) de dicho producto, el otro calculo solo muestro la cantidad de productos que quedan restandole a la cantidad de productos existentes menos la cantidad de productos vendidos.
Estos calculos los estoy haciendo mediante una consulta:

Código: Seleccionar todo

SELECT "codigo", "producto", "cant_existencia", "cant_vendida", "pvp", "cant_existencia" - "cant_vendida" AS "Cant_Restante", "pvp" * "cant_existencia" AS "Total" FROM "inventario", "venta"
y el problema que me da es que al ejecutar dicha consulta, la cantidad de productos me las cuadriplica, es decir en ves de salir una sola fila con la informacion del producto "Hojas Cartas", me salen cuatro filas.
Estoy seguro que el error debe ser algo minusculo pero como no se manejar mucho el Base, ya se me acabaron las ideas de que prodria ser.

Espero puedan ayudarme en esto, asi podre aplicar esto a el proyecto que debo terminar...
Saludos.
Adjuntos
Prueba-Prototipo-BETA-1.rar
(3.24 KiB) Descargado 336 veces
Última edición por jamunix el Vie Dic 12, 2008 8:27 pm, editado 1 vez en total.
marceloo
Mensajes: 76
Registrado: Vie Nov 21, 2008 11:16 am
Ubicación: Villa Elisa. Entre Rios. Argentina

Re: Datos duplicados despues de calculos

Mensaje por marceloo »

Te falta la clausual "where"
SELECT "inventario"."codigo", "inventario"."producto", "inventario"."cant_existencia", "venta"."cant_vendida", "inventario"."pvp", "cant_existencia" - "cant_vendida" AS "Cant_Restante", "pvp" * "cant_existencia" AS "Total" FROM "venta" AS "venta", "inventario" AS "inventario"
WHERE "venta"."codigo" = "inventario"."codigo"
Esto es porque en el diseño de la consulta tambien debes relacionar los campos "código" como lo has hecho en Herramientas-Relaciones. Es decir lo puedes hacer manualmente incluyendo el where ó arrastrando un campo sobre el otro para establecer la relación.
Tengo la mente abierta, pero no tanto como para que se me caiga el cerebro (Richard Feynman)
jamunix
Mensajes: 2
Registrado: Mié Dic 03, 2008 11:46 pm

Re: Datos duplicados despues de calculos

Mensaje por jamunix »

Hola Amigo...
Gracias por la respuesta, lo que me dices es lo correcto, el mismo dia que coloque este port aqui, en una clase en la universidad dio "Consultas SQL" con SQLserver y explico que por cada relacion entre tablas y por cada calculo entre esas tablas debe esta esa linea de codigo:

Código: Seleccionar todo

Where tabla1.campo1 = tabla2.campo2
en mi caso:

Código: Seleccionar todo

WHERE "venta"."codigo" = "inventario"."codigo"
esa misma noche lo probe y funciono perfecto....
Gracias de todos modos, porque si ese profesor no hubiese dado clases igual hubiese tenido la solucion aqui...
saludos.
Responder