Cita:
Iniciado por dannce4life
gnzsoloyo, aprecio tu elaborada respuesta. pero no puedo entender como aplicar las consultas.
pensé que habia alguna forma que de una sola consulta obtener el total.
Lo estás obteniendo al sólo agrupar por referido. Creía que se comprendía bien.
El tema es que simplemente el concepto de bucle de búsqueda no existe en la consulta, eso es un concepto de programación de aplicaciones, que el DBMS implementa internamente.
Para una Consulta lo que debes saber es qué es lo que quieres obtener, cómo se deben agrupar los datos para lograrlo, y qué flitros aplicar para que ese agrupamiento sea lógico (Algebra Relacional, le dicen). Para el usuario, el cómo logra eso el DBMS no es importante, conque la respuesta sea la correcta es suficiente. Ese es uno de los aspectos de la diferencia de visión entre los arquitectos de software y los arquitectos de datos.
Esto:
Código sql:
Ver originalSELECT referido, COUNT(*) compras_referidos
FROM usuario INNER JOIN compra USING(usuario_id)
WHERE referido = 'juan'
GROUP BY referido;
te devuelve lo que estás buscando: El total de compras realizados por los usuarios referidos por 'juan'.
Nada más.