Jump to content
Fórum Script Brasil
  • 0

(Resolvido) Dúvida de agrupamento


Leandro Newba
 Share

Question

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

Edited by Denis Courcy
Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 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 to comment
Share on other 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

Edited by Leandro Newba
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share



  • Forum Statistics

    • Total Topics
      150.2k
    • Total Posts
      647.5k
×
×
  • Create New...