AllNet Postado Junho 8, 2011 Denunciar Share Postado Junho 8, 2011 Olá pessoal, tenho as seguintes tabela:gostaria de exibir o resultado, consegui apenas a lista de jogadores, mais não consegui somar os gols por jogador. alguém pode me ajudar?Obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Junho 8, 2011 Denunciar Share Postado Junho 8, 2011 Qual o SGBD? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 AllNet Postado Junho 8, 2011 Autor Denunciar Share Postado Junho 8, 2011 Qual o SGBD?Mysql Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Junho 8, 2011 Denunciar Share Postado Junho 8, 2011 Movendo PHP » MySQL. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 AllNet Postado Junho 8, 2011 Autor Denunciar Share Postado Junho 8, 2011 (editado) Essa consulta mostrou o que eu queria, tem outra maneira, ou essa consulta esta correta?SELECT sum(ao.qtd_gol), ao.jogador_gol, ap.nome FROM gols AS ao, jogadores AS ap WHERE ap.id = ao.jogador_gol GROUP BY ao.jogador_golObrigado. Editado Junho 9, 2011 por Denis Courcy Melhorar entendimento do código Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Progr'amador Postado Junho 8, 2011 Denunciar Share Postado Junho 8, 2011 Essa consulta mostrou o que eu queria, tem outra maneira, ou essa consulta esta correta?outro modo:select j.*, (select sum(qtd_gol) from gols where jogador_gol=j.id) as qt_gols from jogadores jse o resultado é mesmo, a questão não é saber qual a mais correta, e sim a mais rápida, porque dependendo da número de registros pode da diferença de uma pra outra na tempo de execução.Abs. Progr'amador Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Junho 9, 2011 Denunciar Share Postado Junho 9, 2011 Essa consulta mostrou o que eu queria, tem outra maneira, ou essa consulta esta correta?SELECT sum(ao.qtd_gol), ao.jogador_gol, ap.nome FROM gols AS ao, jogadores AS ap WHERE ap.id = ao.jogador_gol GROUP BY ao.jogador_gol Obrigado. Oi AllNet, Esta forma está correta, mas eu prefiro usar a sintaxe padrão com inner join, por ser mais didática e mais fácil de reconhecer cada elemento na consulta. Usando inner join você saberá, de forma mais clara, qual tabela está relacionando e qual a condição de relacionamento, pois ela fica separada da cláusula where que deverá conter somente os filtros que se deseja aplicar. Reescrevendo seu código teremos:SELECT sum(ao.qtd_gol), ao.jogador_gol, ap.nome FROM gols ao INNER JOIN jogadores ap ON ap.id = ao.jogador_gol GROUP BY ao.jogador_gol Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
AllNet
Olá pessoal, tenho as seguintes tabela:
gostaria de exibir o resultado, consegui apenas a lista de jogadores, mais não consegui somar os gols por jogador. alguém pode me ajudar?
Obrigado.
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.