Ir para conteúdo

POWERED BY:

Arquivado

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

Patrique

[Resolvido] Lista rank através de hits

Recommended Posts

Fala ai pessoal!

 

O vagalume tem um sistema aonde eles rankeiam seus artistas de acordo com visitas feitas pelos usuários.

 

Por exemplo, neste momento o Justin Bieber está em 1º no rank, ExaltaSamba em 2º e por ai vai...

 

http://www.vagalume.com.br/top100/artistas/

 

Minha dúvida é... como eles fazem isso de forma dinâmica, sendo que eles tem uma base de mais de 90 mil artistas.

 

Alguém ai tem um exemplo prático e mais indicado para fazer essa listagem?

 

Desde já agradeço,

Patrique

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa obrigado Giesta, só mais uma pergunta, e quando eu tiver que listar um artista e calcular automaticamente em qual posição ele está, como seria?

 

Muito obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala cara, no caso quando eu entrar em determinado perfil de artista, como eu faria para verificar em qual posição ele ta, eu acredito que seja um code feito automaticamente pelo bd, ou seja pela query, mais não sei como fazer nem faço idéia de como montar as tabelas para que fiquem melhor.

 

você tem alguma idéia?

 

Valew

Compartilhar este post


Link para o post
Compartilhar em outros sites

como o giesta comentou não é recomendavel fazer consultas e calculos desse tipo devido performance e redundância na execução de querys

 

gere os dados já calculados numa outra tabela particular, por exemplo

 

cada click que for feito, registre nessa tabela com 1 incremento.

 

Defina também um limite de ranking. Veja como exemplo, o serviço do Alexa.com. Eles mantem um limite de 100.000 sites, porque é inviável manter ranking acima dessa quantidade.

 

Para o seu caso, pode definir algo em torno de 100.. quem não estiver entre os 100 mais clickados, nem entrariam na exibição de ranking.. sacou ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

limite nao precisa mto ja q vai se calcular apenas eventualmente esta tabela ,no caso a consulta necessaria seria

 

select (@a:=@a+1) posicao_no_ranking , artista , count(*) clicks from tabela t , (select @a:=1)a  group by artista order by count(*) desc

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode ser q sim pode ser q nao, depende das capacidades do hardware deles, provavel q nao ja q nao eh algo essencial ao negocio exercido.

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.