Esa estructura no esta normalizada, lo que pretendes hacer se hace con TRES (3 i solo 3) tablas no tantas tablas como materias, a demas de la tabla materias y la de alumnos...
Fijate:
Materias
idMateria
Nombre
...
Alumnos
idAlumno
Nombre
...
Matricula
idMateria
idAlumno
curso
En la ultima tabla relacionas materias y alumnos de manera que cada materia puede tener n alumnos y cada alumno n materias
Luego
Código sql:
Ver originalSELECT *
form (matricula mt INNER JOIN materias m ON mt.idmateria=m.idamteria)
INNER JOIN alumnos al ON mt.idalumno=al.idalumno
WHERE mt.idmateria=25
Te da toda la informacion que necesitas, el nombre de la materia y el delos alumnos.... de la materia con id=25
Hacerlo como planteas con una tabla (lista) para cada materia
NO ES OPTIMO seria un diseño ERRONEO.
Si lo sofisticas un poco luego quizas necesitas una tabla para los datos de los cursos... otra para los profes....
Quim