Ver Mensaje Individual
  #4 (permalink)  
Antiguo 05/01/2009, 14:40
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 17 años
Puntos: 300
Respuesta: duda en pequeño ejercicio de mysql

Yo te propongo esta:
Código sql:
Ver original
  1. SELECT c.codigoequipo, AVG( c.peso ) media
  2. FROM `ciclista` c
  3. WHERE c.peso >75
  4. AND c.codigoequipo
  5. IN (
  6.  
  7. SELECT c2.codigoequipo
  8. FROM `ciclista` c2
  9. WHERE c2.peso >75
  10. GROUP BY c2.codigoequipo
  11. HAVING COUNT( c2.codigociclista) >=3
  12. )
  13. GROUP BY c.codigoequipo

Primero busco los equipos que tienen tres ciclistas o más que pesan más de 75 kilos.
SELECT c2.codigoequipo
FROM `ciclista` c2
WHERE c2.peso >75
GROUP BY c2.codigoequipo
HAVING count( c2.codigociclista ) >=3

Luego hago una selección buscando esos equipos y sus ciclistas que pesan más de 75 kilos y saco la media.
SELECT c.codigoequipo, AVG( c.peso ) media
FROM ciclista c
WHERE c.peso >75
AND c.codigoequipo IN (...) GROUP BY c.codigoequipo

Última edición por jurena; 05/01/2009 a las 14:48