 
			
				01/07/2013, 13:18
			
			
			     |  
      |    |    |    Fecha de Ingreso: abril-2008  Ubicación: España  
						Mensajes: 58
					  Antigüedad: 17 años, 6 meses Puntos: 1     |        |  
  |      SELECT MAX SUM(x*y)        Buenas tardes estoy haciendo esta consulta:   
SELECT v.dni_cliente, SUM(v.unidades*m.precio) as importe 
FROM ventas_vista as v INNER JOIN medicamento as m 
ON v.cod_med=m.cod_med   
GROUP BY v.dni_cliente   
Y el resultado que me saca son todos los clientes con el total gastado.   
Yo quisiera que me sacara solo un único cliente que sea el que mas ha gastado!   
He intentado cosas asi:   
--------------------------------------------------------------------------- 
SELECT v.dni_cliente, SUM(v.unidades*m.precio) as importe 
FROM ventas_vista as v INNER JOIN medicamento as m 
ON v.cod_med=m.cod_med   
GROUP BY v.dni_cliente 
HAVING MAX(importe) 
-------------------------------------------------------------------------- 
Pero asi no muestra ningun cliente con sus gastos...   
O esto otro:   
------------------------------------------------------------------------- 
SELECT v.dni_cliente, MAX(SUM(v.unidades*m.precio)) as importe 
FROM ventas_vista as v INNER JOIN medicamento as m 
ON v.cod_med=m.cod_med   
GROUP BY v.dni_cliente 
--------------------------------------------------------------------------------- 
Pero da este error: 
Invalid use of group function    
¿Alguien sabe como hacerlo?   
Muchas gracias!           |