Piaui 1 Denunciar post Postado Dezembro 9, 2016 Olá Galera, Seguinte, tenho uma tabela de vendas, e em cada venda contem o id do vendedor que a fez. Como eu faço para rankiar esses vendedores pelo números de vendas feitas? tebela: id_venda; produto; id_vendedor; grato. Compartilhar este post Link para o post Compartilhar em outros sites
saidmrn 26 Denunciar post Postado Dezembro 9, 2016 pode usar essa query pra criar um rank: select id_vendedor as vendedor ,count(id_vendedor) as rank from tabela group by id_vendedor; Exemplo: http://sqlfiddle.com/#!9/269dfd/2 Compartilhar este post Link para o post Compartilhar em outros sites
Piaui 1 Denunciar post Postado Dezembro 9, 2016 vou tenta ai, já te dou um feedback Compartilhar este post Link para o post Compartilhar em outros sites
Piaui 1 Denunciar post Postado Dezembro 9, 2016 saidmrn deu certo só que esqueci de mencionar que só o vai conta as vendas com status = concluida,fiz o filtro assim mas não deu certo: select id_vendedor as vendedor ,count(id_vendedor) as rank from tabela where status = 'concluida' group by id_vendedor; Compartilhar este post Link para o post Compartilhar em outros sites
vitorweb 2 Denunciar post Postado Dezembro 9, 2016 select count(id_vendedor) as rank, id_vendedor as vendedor from tabela where status = 'concluida' group by id_vendedor; Compartilhar este post Link para o post Compartilhar em outros sites
Piaui 1 Denunciar post Postado Dezembro 9, 2016 vitorweb seu código funciona mas não rankiou pela quantidade de vendas Compartilhar este post Link para o post Compartilhar em outros sites
saidmrn 26 Denunciar post Postado Dezembro 9, 2016 testei a sua query e funcionou no sqlfiddle,como tá a estrutura do seu banco ? não tem nenhum espaço vazio dentro de status ? seria melhor alterar esse campo para um inteiro ou binário,quando for concluida poi 1,quando não,poi 0. e usa a query select id_vendedor as vendedor ,count(id_vendedor) as rank from tabela where status = 1 group by id_vendedor; além de ajudar no controle,melhora o desempenho. Compartilhar este post Link para o post Compartilhar em outros sites
Piaui 1 Denunciar post Postado Dezembro 9, 2016 Olha ai o vendedor 21 ta com 84 mesmo assim ta lá em baixo. já alterei o ORDER By id_vendedor para DESC mas não funcionou. Compartilhar este post Link para o post Compartilhar em outros sites
saidmrn 26 Denunciar post Postado Dezembro 9, 2016 select id_vendedor as vendedor ,count(id_vendedor) as rank from tabela where status = 1 group by id_vendedor order by rank desc; Compartilhar este post Link para o post Compartilhar em outros sites
Piaui 1 Denunciar post Postado Dezembro 9, 2016 OBRIGADO! Compartilhar este post Link para o post Compartilhar em outros sites