Java - Consulta sql

   
Vista:
Imágen de perfil de Javier

Consulta sql

Publicado por Javier javi.esp0509@gmail.com (7 intervenciones) el 03/07/2017 17:12:51
Hola a todos, estoy tratando de resolver un ejercicio hace ya un tiempo largo y no puedo hacerlo.

PRODUCTO
id (PK) (INT) IDENTITY
nombre (VARCHAR)
precio (NUMERIC(6,2))

VENTA
id (PK) (INT)
idProducto (INT)
cantidad (INT)
aplicaDescuento (BIT)
descuento (INT)

Resulta que tengo este enunciado..
El monto total ganado del producto que haya tenido mayor cantidad de ventas (se considera la sumatoria de
las cantidades de producto de cada venta). Por ejemplo, si el producto A tiene 2 ventas en donde una fue
de 5 unidades y la otra de 7 unidades, la cantidad de venta seria de 12. Si este fue el producto con más
cantidad de venta calcular cuánto se ganó. Tener en cuenta los descuentos al realizar este cálculo.
Esto debo mostrarlo en la ventana de reportes.. Estoy trabajando con Java!
Creo que la unica forma es obtener de una consulta el resultado, ya que hay que considerar los descuentos que pueden ser distintos.. de 10, 20 y 50 %

select top (1)nombre as Producto, sum(cantidad) as CantidadVendido,sum(precio*cantidad) as MontoTotal
from Ventas v, Productos p
where v.idProducto = p.id
group by nombre
order by sum(cantidad) desc

Si no tendria en cuenta los descuentos esta seria la consulta correcta! Pero al no ser asi necesitaria un poco de su ayuda! Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Consulta sql

Publicado por Tom (1049 intervenciones) el 03/07/2017 18:11:12
Si no tienes la suficiente práctica con SQL, hazlo en varios pasos.
Tu select actual te sirve para saber cual es el producto más vendido.
Después puedes consultar solamente las ventas de ese producto, e ir calculando el importe total, para, al final, ver el beneficio.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consulta sql

Publicado por Nicolas (52 intervenciones) el 03/07/2017 18:40:17
Hola Javier.
Tom te da una opción para hacerlo y tendrias que desarrollarlo con lenguaje JAVA.
La otra posibilidad es utilizar SQL en una consulta en la que deberias utilizar algun INNER JOIN y alguna función de agregacion por ejemplo SUM y ademas de una agrupación por tu id de producto con GROUP BY.
Espero que pueda servir de ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar