Calculate the mean values where fields are equal

1

I have a table, in mysql , which receives some data regarding evaluations. How can I average these evaluations directly in query , based on the question? I tried in many ways, including researching here, and I could not.

SELECT perg.pergunta, resp.resposta, (SELECT AVG(resposta) FROM resp_pergunta_man) as media FROM resp_pergunta_man AS resp 
LEFT JOIN pergunta_man AS perg ON (perg.codigo = resp.pergunta) 

Result obtained:

pergunta                     |   resposta    |   media
_____________________________|_______________|______________________   
Tempo de resposta do chamado |    4          |    5.666666666666667
Cumprimento do prazo         |    9          |    5.666666666666667
Qualidade da solução         |    4          |    5.666666666666667
Conhecimento do Técnico      |    6          |    5.666666666666667
Canal telefônico             |    5          |    5.666666666666667
Portal Hórus Manutenção      |    4          |    5.666666666666667
Tempo de resposta do chamado |    3          |    5.666666666666667
Cumprimento do prazo         |    8          |    5.666666666666667
Qualidade da solução         |    6          |    5.666666666666667
Conhecimento do Técnico      |    2          |    5.666666666666667
Canal telefônico             |    8          |    5.666666666666667
Portal Hórus Manutenção      |    9          |    5.666666666666667
    
asked by anonymous 30.08.2016 / 16:18

1 answer

0

Grouping through GROUP BY , see an example:

SELECT perg.pergunta, AVG(resp.resposta) as media 
FROM resp_pergunta_man AS resp 
LEFT JOIN pergunta_man AS perg ON (perg.codigo = resp.pergunta) 
group by perg.pergunta
    
30.08.2016 / 16:22