Seleccionar datos de dos tablas

Tengo dos tablas llamadas Boletas y Facturas, lo que estoy tratando de hacer es que en una selección, el producto Gaseosas( por ejemplo), la cantidad de ventas en boletas se sume con la cantidad de ventas del mismo producto pero de las facturas

1 Respuesta

Respuesta
1

Imagino que en ambas tablas tienes un id producto, y que los campos a sumar son int o float en la tabla.

Debes cruzar las tablas en tu consulta, y paralelamente sumar los valores de las dos columnas en una nueva columna. Algo tal que asi:

select p.*, (b.vendidos + f.vendidos) as total_vendido from productos p, boletas b, facturas f where p.id_producto="5" and p.id_producto = b.id_producto and .id_producto = f.id_producto 

Sobre la consulta varios aspectos a aclarar:

· Lo primero que obviamente tienes que adaptarlo a tus campos.
· La consulta es un modelo para que veas claro el funcionamiento del cruce de tablas. Como la consulta es extremadamente simple podría hacerse b.id_producto="5" directamente pero no verías la teoría que intento explicarte.
· No he probado la consulta pues no dispongo aqui de mysql por lo que puede tanto fallar como dar resultados repetidos. En esos casos prueba a utilizar select DISTINCT p.*, etc... o a hacer un group by id_producto. Mi intención es que veas cómo se cruzan tablas en mysql es una herramienta muy poderosa.
· Si la manera de expresar la suma provoca error de sintaxis, prueba a usar la función SUM() de mysql, aunque no tengo muy claro que pueda sumar dos columnas diferentes.

Suerte!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas