Em 24/05/15, Matheus Saraiva<[email protected]> escreveu: > Existe uma tabela chamada GAME: > > GAME > --------------- > codbar_game varchar(14) PK, > nome_game varchar(50), > genero_game varchar(30), > status_game boolean > > Cada game pode ter vários idiomas de áudio: > > AUDIO > ---------------- > id_audio SERIAL PK, > nome_idioma varchar(30) > > > AUDIOGAME > ---------------------- > codbar_game varchar(14) PK FK, > id_audio integer PK FK > > > Cada game também pode ter vários idiomas de legenda: > > LEGENDA > ------------------- > id_legenda SERIAL PK, > nome_legenda varchar(30) > > > LEGENGAME > ----------------------- > codbar_game varchar(14) PK FK, > id_legenda integer PK FK > > > Estou pensando em um select onde eu possa trazer todos os dados de um > determinado game junto com as legendas e áudios dele, exemplo: > > > codbar_game | nome_game | genero_game | status_game | legendas_game | > audios_game > 00000001 God of War Ação TRUE > <legendas> <audios> > > > A ideia é não repetir o jogo para mostrar os áudios e as legendas que > ele tem, ou seja, eu não desejo isso: > > codbar_game | nome_game | genero_game | status_game | legendas_game | > audios_game > 00000001 God of War Ação TRUE pt_BR > pt_BR > 00000001 God of War Ação TRUE en_US > en_US > > Ao invés disso o select poderia retornar as legendas e os audios do game > em forma de listas de varchar, assim o programador pode extrair o > conteúdo dessa lista e exibir graficamente como achar melhor. Aceito > outras sugestões. > _______________________________________________ >
Utilize a cláusula GROUP BY codbar_game e a função de agregação array_agg ou string_agg. http://www.postgresql.org/docs/current/interactive/functions-aggregate.html Osvaldo _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
