Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Inner join relacionando un campo calculado

Estas en el tema de Inner join relacionando un campo calculado en el foro de Mysql en Foros del Web. Hola a todos, Intento ver la posibilidad de simplificar 2 consultas en una sola pero no sé si es posible ya que necesito hacer un ...
  #1 (permalink)  
Antiguo 26/09/2016, 09:47
Avatar de majete  
Fecha de Ingreso: noviembre-2007
Mensajes: 96
Antigüedad: 16 años, 5 meses
Puntos: 2
Inner join relacionando un campo calculado

Hola a todos,
Intento ver la posibilidad de simplificar 2 consultas en una sola pero no sé si es posible ya que necesito hacer un INNER JOIN por dos campos, uno de ellos calculado directamente en la misma consulta.

Ahora mismo tengo una consulta con dos tablas:
ConsultaPromedios
TablaResultados -> TablaClasificación
[idcuestionario].......[pregunta]
[pregunta]..............[asignatura]
[respuesta]

Hace un RIGHT JOIN del campo [pregunta] y calcula el promedio de cada asignatura (utilizando el campo respuesta), agrupando por idcuestionario y por asignatura. El resultado final es:

[idcuestionaio][asignatura][promedio]

Código SQL:
Ver original
  1. SELECT TablaResultados.idcuestionario, TablaClasificacion.asignatura, Round(Avg([respuesta]),2) AS promedio
  2. FROM TablaClasificacion RIGHT JOIN TablaResultados ON TablaClasificacion.pregunta = TablaResultados.pregunta
  3. GROUP BY TablaResultados.idcuestionario, TablaClasificacion.asignatura;

A continuación, sobre esa ConsultaPromedios, genero otra consulta ConsultaPercentiles a la que añado una tabla TablaPercentiles (con la equivalencia de cada asignatura con cada promedio y percentil)
ConsultaPercentiles
ConsultaPromedios -> TablaPercentiles
[idcuestionario]...........[asignatura]
[asignatura]................[promedio]
[promedio]..................[percentil]

Hace un INNER JOIN por los campos asignatura y promedio, para poder obtener el percentil que le corresponda.

¿Es posible resolver esto en la primera consulta? Es decir, incluir la TablaPercentiles haciendo un INNER JOIN de [asignatura] y del Promedio resultante que calcula en ConsultaPromedio.

No sé si me explicado bien. Espero que sí.
Muchas gracias!
JC

Etiquetas: campo, join, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:13.