AVG() agrupado
Publicado por akhasis (8 intervenciones) el 13/05/2010 11:37:32
Hola!!!
Hace unos días hice una consulta en este foro, pero no me pudisteis contestar porque no había dado suficientes datos sobre mi caso concreto. Así que vuelvo a escribir para proporcionar todos los datos que creo que pueden ser necesarios.
He puesto la consulta que no consigo que me resulte correctamente, así como la consulta que crea las tablas necesarias para llevarla a cabo, en la url que acompaña a mi nick en este mensaje: http://pastebin.com/kxqwC3v2
La consulta devuelve una columna con los datos usados en la fórmula (la columna se llama datos_usados). Esta consulta contiene datos de tipo (id_centros, resultado, objetivo_mejora, pesos):
# 19, 5.5, 5, 100
# 19, 9.25, 5, 100
# 19, 7.81, 5, 100
# 20, 5.5, 5, 100
# 20, 9.25, 5, 100
# 21, 9.25, 5, 100
# 21, 7.81, 5, 100
# 21, 5.5, 5, 100
...
Pues bien, lo que quiero que me devuelva la consulta es, en una columna, la media de los resultados de cada id_centro. Es decir, para el centro 19, el resultado sería
5.5/ 5*100 +
9.25/5*100 +
7.81/5*100
de la misma manera se calcularía el resultado de cada centro, y, a continuación, realizar la media de todos los resultados.
Dicho de otra manera, el problema lo tengo a la hora de sumar los resultados de cada centro por separado y crear la media del resultado de estas sumas.
Es necesario realizarlo en una sola consulta (aunque tenga subconsultas) porque en algunos casos, después es necesario ordenarlo por el resultado de ese campo.
Espero que, a pesar de lo enrevesado de la consulta y lo complicado del caso, haya sido capaz de exponer el tema lo más claro posible.
Gracias por soportar esta parrafada, y por vuestra atención.
Un saludo,
akhasis
Hace unos días hice una consulta en este foro, pero no me pudisteis contestar porque no había dado suficientes datos sobre mi caso concreto. Así que vuelvo a escribir para proporcionar todos los datos que creo que pueden ser necesarios.
He puesto la consulta que no consigo que me resulte correctamente, así como la consulta que crea las tablas necesarias para llevarla a cabo, en la url que acompaña a mi nick en este mensaje: http://pastebin.com/kxqwC3v2
La consulta devuelve una columna con los datos usados en la fórmula (la columna se llama datos_usados). Esta consulta contiene datos de tipo (id_centros, resultado, objetivo_mejora, pesos):
# 19, 5.5, 5, 100
# 19, 9.25, 5, 100
# 19, 7.81, 5, 100
# 20, 5.5, 5, 100
# 20, 9.25, 5, 100
# 21, 9.25, 5, 100
# 21, 7.81, 5, 100
# 21, 5.5, 5, 100
...
Pues bien, lo que quiero que me devuelva la consulta es, en una columna, la media de los resultados de cada id_centro. Es decir, para el centro 19, el resultado sería
5.5/ 5*100 +
9.25/5*100 +
7.81/5*100
de la misma manera se calcularía el resultado de cada centro, y, a continuación, realizar la media de todos los resultados.
Dicho de otra manera, el problema lo tengo a la hora de sumar los resultados de cada centro por separado y crear la media del resultado de estas sumas.
Es necesario realizarlo en una sola consulta (aunque tenga subconsultas) porque en algunos casos, después es necesario ordenarlo por el resultado de ese campo.
Espero que, a pesar de lo enrevesado de la consulta y lo complicado del caso, haya sido capaz de exponer el tema lo más claro posible.
Gracias por soportar esta parrafada, y por vuestra atención.
Un saludo,
akhasis
Valora esta pregunta


0