Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Dúvida de agrupamento


Leandro Newba

Pergunta

Fala pessoal,

Não sou um expert e gostaria de saber se isso é possivel...

Possuo três tabelas,

jogadores (jogador_id, nome, idade, grupo etc...)

medalhas (medalha_id, descricao, foto, etc..)

medalhas_atribuidas (medalha_id, jogador_id, data, etc..)

Quando um jogador recebe uma medalha, é inserido o registro na tabela medalhas_atribuidas, eu gostaria de fazer uma query para imprimir o nome do jogador e as medalhas que ele possui.

Para isso fiz essa query

SELECT jogadores.jogador_id, jogadores.nome, medalhas_atribuidas.medalha_id FROM jogadores INNER JOIN medalhas_atribuidas ON jogadores.jogador_id=medalhas_atribuidas.jogador_id where jogadores.grupo="1" order by jogadores.jogador_id

A query me traz o seguinte resultado:

Jogador ID / Jogador Nome / Medalha_ID

2 / Pedro / 2

2 / Pedro / 3

4 / Joao / 1

4 / Joao / 2

Eu gostaria que imprimisse dessa maneira

Jogador ID / Jogador Nome / Medalha_ID / Medalha_ID

2 / Pedro / 2 / 3

4 / Joao / 1 / 2

Eu acho que para ter esse resultado eu teria que alterar a estrutura da tabela medalhas_atribuidas incluindo um campo bolean para cada medalha_id, assim podendo ter as colunas das medalhas, só que perderia o campo data, quando é efetuado a entrega da medalha.

Desde já, agradeço por ler minha dúvida

Editado por Denis Courcy
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

'Leandro Newba'

Voce pode usar a função GROUP_CONCAT. Leia o manual do MySQL para mais detalhes.

SELECT jogadores.jogador_id, jogadores.nome, GROUP_CONCAT(medalhas_atribuidas.medalha_id)
FROM jogadores 
INNER JOIN medalhas_atribuidas ON jogadores.jogador_id=medalhas_atribuidas.jogador_id
where jogadores.grupo="1" 
GROUP by jogadores.jogador_id

Link para o comentário
Compartilhar em outros sites

  • 0

Muito obrigado Denis, é exatamente isso o que procuro, porém está me retornando o valor [bLOB - 7 B], eu li em um site que preciso alterar o campo group_concat_max_len no my.ini, a briga agora é para acessar esse arquivo no servidor :)

Resolvido, vlw!! :D

Editado por Leandro Newba
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...