#Test de Programación 5Rabbits
##Ejercicio 2
Planteamiento
Un Colegio necesita un sistema para administrar sus cursos. Cada curso tendrá un profesor a cargo y una serie de alumnos inscritos. Cada profesor, así como cada alumno, puede estar en más de un curso.
Además cada curso tendrá una cantidad no determinada de pruebas y el sistema debe permitir ingresar la nota para cada alumno en cada prueba. Todas las pruebas valen lo mismo.
Nombre Base de datos: school_db
Tabla curses
Field | Data Type |
---|---|
id | Int(primary_key) |
name or course_name | Varchar |
teacher_id | Int(foreing_key) |
Tabla teachers
Field | Data Type |
---|---|
id | Integer(primary_key) |
name or teacher_name | Varchar |
dni | Int or Varchar |
phone_number | Int or Varchar |
Tabla students
Field | Data Type |
---|---|
id | Integer (primary_key) |
name or student_name | Varchar |
dni | Int or Varchar |
Tabla tests
Field | Data Type |
---|---|
id | Int(primary_key) |
course_id | Int(foreing_key) |
student_id | Int(foreing_key) |
note | Int |
subject | Varchar |
Tabla courses_students
Field | Data Type |
---|---|
id | Int(pk) |
course_id | Int(fk) |
student_id | Int(fk) |
##Parte 2
-
Escriba un Query que entregue la lista de alumnos para el curso
programación
SELECT students.* FROM students as s INNER JOIN courses_students as cs ON cs.student_id = s.id INNER JOIN course as c on cs.course_id = c.id WHERE c.name = 'programación'
-
Escriba un Query que calcule el promedio de notas de un alumno en un curso
SELECT avg(note) FROM test as t WHERE t.student_id = 'id_s' AND t.course_id = 'id_c'
-
Escriba un Query que entregue a los alumnos y el promedio que tiene en cada ramo (curso)
PASO
-
Escriba un Query que lista a todos los alumnos con más de un ramo(curso) con promedio en rojo
PASO