Dado un cliente obtener la atracción más visitada
Publicado por Guido Tripodi (3 intervenciones) el 08/05/2018 14:42:13
Hola cómo están?
Les comento estoy haciendo una query que necesito obtener la atracción más visitada por cliente.
Tengo las siguientes tablas: cliente, producto, consumo y tarjeta
Lo que hago es lo siguiente:
En ves de devolverme una tupla por cada cliente atracción cantidad visitada máxima
Me devuelve una única tupla con el cliente y la atracción que más visito que es máxima entre todas las tuplas cliente atracción cantidad visitada
Cómo debería hacer?
Muchas gracias
Les comento estoy haciendo una query que necesito obtener la atracción más visitada por cliente.
Tengo las siguientes tablas: cliente, producto, consumo y tarjeta
Lo que hago es lo siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT cliente.nombre, cliente.apellido, producto.nombre, count(*) as cantidadVisitado
FROM mydb.Cliente cliente, mydb.Tarjeta tarjeta, mydb.Producto producto, mydb.Consumo consumo
WHERE consumo.idTarjeta = tarjeta.idTarjeta
AND tarjeta.idCliente = cliente.idCliente
AND producto.idProducto = consumo.idProducto
GROUP BY consumo.idTarjeta, consumo.idProducto
HAVING count(*) >= ALL (SELECT count(*) as count FROM
mydb.Cliente cliente, mydb.Tarjeta tarjeta, mydb.Producto producto, mydb.Consumo consumo
WHERE consumo.idTarjeta = tarjeta.idTarjeta
AND tarjeta.idCliente = cliente.idCliente
AND producto.idProducto = consumo.idProducto
GROUP BY consumo.idTarjeta, consumo.idProducto)
;
En ves de devolverme una tupla por cada cliente atracción cantidad visitada máxima
Me devuelve una única tupla con el cliente y la atracción que más visito que es máxima entre todas las tuplas cliente atracción cantidad visitada
Cómo debería hacer?
Muchas gracias
Valora esta pregunta
0