Hola y perdonen que insista en esto pero sigo sin ver la necesidad de usar las tres tablas por lo siguiente:
La primera solo almacena los grupos.
La segunda almacena los alumnos con sus grupos
La tercera almacena las materias ligadas al alumno.
Pero si insisten en usar las tres tablas pues asi:
Usando un simple Combobox y un dbgrid:
Este Query trabaja con el combobox que trae Id_Gpo_Carr de la famosa primera tabla y lo inserta en el:
Código Delphi
[-]
QTemp.SQL.Text := 'Select Id_Gpo_Carr From GPO_CARR';
QTemp.Active := True;
While not QTemp.Eof do
begin
CBALUMNOS.Items.Add(QTemp.Fields[0].Text);
QTemp.Next;
end;
QTemp.Active := False;
QTemp es el nombre que le di al query.
CBALUMNOS es el nombre que le di al combobox.
En otro query ligado al dbgrid se pone esto:
Código Delphi
[-]
QTemp2.SQL.Text := 'SELECT * FROM ALUMNOS RIGHT JOIN CALIFICACIONES ON ALUMNOS.Id_Gpo_Carr = '+CBALUMNOS.Text+'';
QTemp.Active := True;
QTemp2 es el nombre que le di al segundo query.
Este vera lo que este en el combobox que se llama CBALUMNOS y filtrara los alumnos que cumplan con ese requisito.
Creo que se puede con un combobox y con sql como veras CONY es cuestion de un poco de paciencia.
Espero te sirva
Saludos