Dados lado a lado
Bom dia,
Tenho duas tabelas, cliente e telefone.
Na tabela cliente armazeno os dados referente ao mesmo. Na tabela telefone adiciono vários telefones dos clientes, quantos forem necessários.
Minha dúvida:
Como trazer numa consulta SQL todos os telefones de um determinado cliente, porém, um ao lado do outro. Ex.:
1 - João da Silva - (48)3445-4555 - (48)9 9944-7777 - (48)9 8855-3322
Lembrando que na tabela telefone gravo id_cliente e telefone. num relacionamento um pra muitos.
Obrigado.
Tenho duas tabelas, cliente e telefone.
Na tabela cliente armazeno os dados referente ao mesmo. Na tabela telefone adiciono vários telefones dos clientes, quantos forem necessários.
Minha dúvida:
Como trazer numa consulta SQL todos os telefones de um determinado cliente, porém, um ao lado do outro. Ex.:
1 - João da Silva - (48)3445-4555 - (48)9 9944-7777 - (48)9 8855-3322
Lembrando que na tabela telefone gravo id_cliente e telefone. num relacionamento um pra muitos.
Obrigado.
Fernando Generoso
Curtidas 0
Melhor post
Jothaz
30/06/2020
Tem anos que não uso MySQL e não tenho com testar, pois só tenho acesso a Oracle, Sql Server e PostgreSQL, mas me lembro que tinha que talvez possa ajudá-lo.
Dá uma pesquisada no Google que terá vários exemplos de uso.
GROUP_CONCAT
Dá uma pesquisada no Google que terá vários exemplos de uso.
GOSTEI 1
Mais Respostas
Fernando Generoso
30/06/2020
Tem anos que não uso MySQL e não tenho com testar, pois só tenho acesso a Oracle, Sql Server e PostgreSQL, mas me lembro que tinha que talvez possa ajudá-lo.
Dá uma pesquisada no Google que terá vários exemplos de uso.
GROUP_CONCAT
Dá uma pesquisada no Google que terá vários exemplos de uso.
Obrigado Jothaz!
Mas o que eu gostaria de fazer seria transformar linhas em colunas, ou seja, cada telefone em uma coluna. Acredito que isso não seja possível somente usando SQL, mas se souberes, agradeço.
Obrigado.
GOSTEI 0
Jothaz
30/06/2020
MySQL realmente tem muito tempo que não uso.
Os caminhos são:
1 - Trabalhar com cursor e concatenar as colunas o que dependendo de cenário pode comprometer a performance.
2 - Pesquise por Pivot, no SQL Server é manha fazer usando Pivot, não sei se o MySQL tem.
Não quero ser chato, mas pelo que me lembre o GROUP_CONCAT fazia isso.
Pena que não possa ajudar mais.
Mas pesquisando no Google certamente v encontrará a soluçã.
Os caminhos são:
1 - Trabalhar com cursor e concatenar as colunas o que dependendo de cenário pode comprometer a performance.
2 - Pesquise por Pivot, no SQL Server é manha fazer usando Pivot, não sei se o MySQL tem.
Não quero ser chato, mas pelo que me lembre o GROUP_CONCAT fazia isso.
Pena que não possa ajudar mais.
Mas pesquisando no Google certamente v encontrará a soluçã.
GOSTEI 1
Fernando Generoso
30/06/2020
MySQL realmente tem muito tempo que não uso.
Os caminhos são:
1 - Trabalhar com cursor e concatenar as colunas o que dependendo de cenário pode comprometer a performance.
2 - Pesquise por Pivot, no SQL Server é manha fazer usando Pivot, não sei se o MySQL tem.
Não quero ser chato, mas pelo que me lembre o GROUP_CONCAT fazia isso.
Pena que não possa ajudar mais.
Mas pesquisando no Google certamente v encontrará a soluçã.
Os caminhos são:
1 - Trabalhar com cursor e concatenar as colunas o que dependendo de cenário pode comprometer a performance.
2 - Pesquise por Pivot, no SQL Server é manha fazer usando Pivot, não sei se o MySQL tem.
Não quero ser chato, mas pelo que me lembre o GROUP_CONCAT fazia isso.
Pena que não possa ajudar mais.
Mas pesquisando no Google certamente v encontrará a soluçã.
Obrigado Jothaz,
Vou dar uma olhada no Pivot e ver se dá pra implementar no MySQL.
GOSTEI 0