Ver Mensaje Individual
  #7  
Antiguo 30-10-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Reputación: 25
__cadetill Va por buen camino
bueno, el Join como tu le llamas, no es más que la unión de 2 tablas en una sentencia SQL

ejemplo

Código:
'select *
from alumnos a inner join 
             faltas b on (b.CODIALUMNO = a.CODIGO )
where b.INICIOFALTA between' + QuotedStr(sIni) + ' and ' 
       + QuotedStr(sFin)
es decir, la estructura de una inner join es la que sigue
Código:
select * (o campos)
from tabla1 inner join tabla2 on (condiciones de unión)
Básicamente, un Inner Join, lo que te hace es unir las 2 tablas (o las que sean, sólo has de ir concatenando Inners Joins) y devolver aquellos rejistros que cumplen las condiciones de unión. Claro está que, si un registro de la tabla 1 no tiene su respectivo en la tabla 2, éste no aparecerá en la consulta. Por eso que, en tu caso es lo que te combiene, ya que sólo quieres los alumnos que tengan faltas.

Si el caso fuera que quieres todos los alumnos tengan o no faltas (vamos, lo que te sale ahora), para eso existen también el left outer join y el rigth outer join, pero eso ya lo trataremos en otra ocasión

Espero que la explicación te sirva
Responder Con Cita