SQL - Select anidado PostgreSQL

 
Vista:

Select anidado PostgreSQL

Publicado por camilo (4 intervenciones) el 04/07/2014 23:52:33
Tengo 3 tablas clientes con los atributos codigo y nombre , productos con los atributos codigo y precio, ventas con los atributos codigo_producto, codigo_cliente y cantidad, necesito saber cual es el o los cliente que generaron mas ingresos.

No me funciona, agradecería la ayuda.

select clientes.nombre from clientes,(select sum (ventas.cantidad) from ventas join productos on ventas.codigo_producto=productos.codigo group by ventas.codigo_cliente) as r1 where r1.codigo_cliente=clientes.codigo and r2=max((select precio*r1.cantidad from productos, r1 )as r2);
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
Imágen de perfil de xve
Val: 135
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Select anidado PostgreSQL

Publicado por xve (284 intervenciones) el 05/07/2014 09:53:23
Hola Camilo, no lo he podido probar, pero creo que seria algo así:

1
2
3
4
SELECT sum(v.cantidad*p.precio) as Total,c.codigo,c.nombre FROM
clientes c LEFT JOIN ventas v ON c.codigo=v.codigo_cliente
LEFT JOIN productos p ON p.codigo=v.codigo_producto
GROUP BY c.codigo

Si nos puedes comentar...
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