Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

o.mago

Ordenar pela média

Recommended Posts

Olá galera, estou com um problema. Tenho uma tabela com itens que são votados, eu preciso selecionar a media desse valor e ordenar pela maior, estou tentando assim.SELECT *, AVG(nota)FROM notaGROUP BY nota.tituloORDER BY nota.AVG(nota)Não está dando certo. Como posso fazer essa consulta?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente assim

SELECT AVG(nota),titulo
FROM nota GROUP BY nota.titulo
ORDER BY nota.AVG(nota)

perceba que retirei o *, isso porque você está agrupando por titulo e não pode selecionar outros campos da tabela

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não deu certo, já tinha tentando assim. O erro acontece quando coloco o ORDER BY no campo que retorna a média.Estou tentando assim.SELECT AVG(nota), tituloFROM nota, filmesWHERE nota.titulo = filmes.tituloGROUP BY nota.tituloORDER BY nota.AVG(nota)Dá o seguinte erro. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(nota) LIMIT 0, 5' at line 1O que fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites
SELECT avg(teste) as media, nome FROM teste group by nome order by avg(teste) desc LIMIT 2  ;

acabo de testar esse sql em uma tabela de testes que tenho e está funcionando. aqui uso o mysql 5.1acho que seu problema está em nota.AVG(nota), passe apenas para AVG(nota)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui resolver o problema mas não era isso que você falou. O problema era que no order by não posso usar AVG(nota) e sim o nome que determino no select fiz assim.SELECT *, AVG(nota) AS MEDIAFROM nota, filmesWHERE nota.titulo = filmes.tituloGROUP BY nota.tituloORDER BY MEDIA descValeu pela ajude galera

Compartilhar este post


Link para o post
Compartilhar em outros sites

vai ver a versão do mysql que você usa não suporta pois testei de todas as formas no 5.1 e funcionou. Ainda bem que foi resolvido

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.