Hola, buen día, los pongo en contexto de lo que requiero hacer.

Tengo una tabla donde guardo las respuestas de los alumnos para unas encuestas, cada encuesta representa una materia por alumno, por lo que, un alumno puede contestar varias encuestas según el número de materias que esté llevando.

Los administrativos requieren obtener reportes. Como promedios por materias, promedios por departamento, dirección, campus y por toda la escuela. El camino que siguen para obtener cada promedio es el siguiente:

Primero se obtiene un promedio por cada encuesta, es decir, cada respuesta del alumno tiene un determinado valor.

Promedio de la encuesta=suma de los valores de las respuestas / total de preguntas.

Luego para obtener el promedio por materia:

Promedio de materia=suma de los promedios de las encuestas de la misma materia / total de encuestas

Luego obtener promedio por depto:

Promedio depto=suma de los promedios de materias de un mismo depto / total de materias


Promedio Dirección= suma de los promedios de los deptos, de una dirección / total de deptos.




Hay reportes, que requieren promedio por materia, o por depto, o por dirección, etc. Yo quize crear varias tablas temporales e ir borrando y guardando los cálculos, sin embargo, me dio lata, y quisiera ver si a través de consultas o subconsultas, o algo que tenga oracle, que me permita hacerlo.

Saludos y Gracias de antemano.
Like it on Facebook, +1 on Google, Tweet it or share this topic on other bookmarking websites.
  • Re: Hacer este proceso con consultas y subconsultas

    by » 9 years ago


    Podrías crear vistas que generen el reporte al vuelo, pero si tus tablas son muy grandes podrían causarte problemas de performance si no tienes bien definidos tus índices.

    Ahora otra forma es tener tablas (no temporales) que actualices cada día y ya tengas almacenada la información en tablas que solo las consultes, tendrías mejor performance porque evitas estar recalculando cada ves que se genere el reporte.

    Ahora en oracle existen funciones que te pueden ayudar.

    Algunas son SUM, AVG.

    Saludos

  • Re: Hacer este proceso con consultas y subconsultas

    by » 9 years ago


    Hola G3, gracias por la respuesta, voy a hacer lo que me comentas, de crear un proceso que haga cálculos y llene las tablas correspondientes, asi evito estar recalculando como dices.


    Saludos

You do not have permissions to reply to this topic.
Powered by CjForum