Ver Mensaje Individual
  #6  
Antiguo 28-03-2007
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Reputación: 23
poliburro Va por buen camino
Cita:
Empezado por roman
¿Qué no podemos ahorrarnos el join?
Código SQL [-]
select CveAlumno, count(CveAlumno)
from Fallas
group by CveAlumno
having count(CveAlumno) between 5 and 10
// Saludos
Si nos lo ahorraramos que sucedería con aquellos alumnos del maestro que no tuvieran faltas? (Detalle de faltas)?. Pues estos no aparecerían. y el reporte sería erroneo, a menos que explicitamente quisieran solo a los que tienen faltas. :P

Prueba con esto amigo.

[delphi]

Código Delphi [-]
With DM.IBDSAlumnos Do
  Begin
    SelectSQL.Text := 
      '    Select Maestro.CODIALUMNO, Count(*) ' +
      '      From ALUMNOS As Maestro ' +
      ' Left Join FALTAS As Faltas   ' +
      '        On Maestro.CODIALUMNO = Faltas.CALUMNO ' + 
      '  Group By Maestro.CODIALUMNO ' +
      ' Having Count(*) between ESDE and :HASTA';
    ParamByName('DESDE').AsInteger := StrToInt('0' + EDesde.Text);
    ParamByName('HASTA').AsInteger := StrToInt('0' + EHasta.Text);
  End;

Suerte
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita