Si estas haciendo una consulta sql no es necesario hacer ningun ciclo ni condicional, solamente se hace una consulta sql y listo.
Código SQL:
Ver originalSELECT * FROM estudiantes WHERE nota<6;
Obviamente el numero 6 cambiara segun el sistema de calificación que manejes. (Yo he manejado aprobado con 5, con 10 segun el país) . No me parece que sea necesario traer el valor de ninguna otra tabla, es poco practico.