Cita:
Empezado por david_uh
hola foro
Estoy almacenando informacion sobre ventas en mi tabla ventas con los campos:
Id, fecha, total, igv, idlocal,iddocumento, nro documento. fecha
y mi tabla detalle venta
idventa, idprroducto, cantidad, total, utilidad.
engo una abla para mis productos tal que asi:
id, nombe, presentacion. marca, categoria.
como podria hace para recuperar las las utilidades por c/u de los productos que tengo, en un deteminado periodo de ventas
|
Lo primero, es hacer un join que nos devuelva todos los registros que queremos:
Se me ocurre que podría ser:
Código SQL
[-]
select p.marca, p.nombre, v.fecha, dv.utilidad
from venta v
inner join detalle_venta dv
on dv.idventa = v.id
inner join producto p
on p.id = dv.idproducto
Cuando estas seguro de tener la consulta que devuelve todos los registros de interés, aplicar el agrupamiento tal como nos convenga, por ejemplo, si queremos totales de utilidades por mes para cada producto, podría ser:
Código SQL
[-]
select p.marca, p.nombre, extract(month from v.fecha) mes,
extract(year from v.fecha) anio,
sum(dv.utilidad)
from venta v
inner join detalle_venta dv
on dv.idventa = v.id
inner join producto p
on p.id = dv.idproducto
group by 1, 2, 3, 4
order by 1, 2, 4, 3
Hasta luego.
