mldiogo87 2 Denunciar post Postado Julho 19, 2017 Bom dia, Tenho 2 tabelas: TABELA FOTOS COM OS CAMPOS: NOME, USUARIO, LUGAR TABELA USUARIOS COM OS CAMPOS: NOME Preciso fazer um ranking dos usuarios, contabilizado pela quantidade de fotos de cada usuário. Alguém teria uma luz da melhor maneira de fazer ? Grato Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Julho 19, 2017 Select com JOIN , SUM e GROUP BY ordenando o total de forma descendente Compartilhar este post Link para o post Compartilhar em outros sites
mldiogo87 2 Denunciar post Postado Julho 19, 2017 Eu estudei e cheguei em uma consulta, mais ou menos assim : SELECT usuario, COUNT(*) FROM fotos GROUP BY usuario; Mas a questão é que neste caso ele iria exibir o ranking completo, e eu só preciso exibir o ranking individual, por pessoa. Tentei utilizar assim: SELECT usuario, COUNT(*) FROM fotos GROUP BY usuario WHERE usuario = idusuario; Mas não obtive muito sucesso. Grato Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Julho 20, 2017 Ranking individual !? Compartilhar este post Link para o post Compartilhar em outros sites
mldiogo87 2 Denunciar post Postado Julho 20, 2017 Exibir somente a posição do Ranking do usuário "x". Vai ter uma página com informações sobre o o usuário e nela vou colocar " Bem vindo usuário X, sua posição no ranking é ...." Entendeu ? Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Julho 20, 2017 tente select * from ( select @contador := @contador + 1 AS ordem, usuario from ( SELECT usuario, COUNT(*) qtd FROM fotos GROUP BY usuario order by COUNT(*) desc ) virtual ) virtual2 where usuario = '...' vide também https://pt.stackoverflow.com/questions/43888/numeração-sequencial-dos-resultados-de-uma-query Compartilhar este post Link para o post Compartilhar em outros sites
mldiogo87 2 Denunciar post Postado Julho 20, 2017 Obrigado...Vou ter que dar uma estudada porque foi muito além do meu conhecimento, principalmente porque tenho que aplicar em PDO. Qual seria a variável, nesta consulta, que retornaria a posição ? $ordem? Mas obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Julho 20, 2017 Não sei a variável , apenas lembrei de um tópico em que dei uma sugestão para Oracle , mas no Oracle é bem mais simples. Mas vale a ideia básica Compartilhar este post Link para o post Compartilhar em outros sites
mldiogo87 2 Denunciar post Postado Julho 20, 2017 Obrigado!! Compartilhar este post Link para o post Compartilhar em outros sites