Wellington, você quer fazer isso DIRETO no SQL? Se for, eu não vejo como. Não que não existe, eu só não vejo como… a não ser usando cursores, mas aí não te vale o custo de manutenção desse negócio, creio eu. Digo isso porquê tu estás transformando coluna em linha, ou seja, transpondo teu resultSet, e esse resultado que queres é o que conseguirias fazendo uma união desses resultados.
Podes contextualizar tua necessidade?
Abraço!
[quote=leoramos]Wellington, você quer fazer isso DIRETO no SQL? Se for, eu não vejo como. Não que não existe, eu só não vejo como… a não ser usando cursores, mas aí não te vale o custo de manutenção desse negócio, creio eu. Digo isso porquê tu estás transformando coluna em linha, ou seja, transpondo teu resultSet, e esse resultado que queres é o que conseguirias fazendo uma união desses resultados.
Podes contextualizar tua necessidade?
Abraço!
[/quote]
supondo que eu tenha:
TABELAX
COLUNA1 | COLUNA2 | COLUNA3
dado1 | 1 | a
dado2 | 2 | b
dado3 | 3 | c
dado4 | 4 | d
esse select: “SELECT coluna1 FROM tabelaX where coluna2 < 4” me retornará 3 rows:
dado1
dado2
dado3
mas eu preciso que isso fique em uma string só para que eu possa fazer a seguinte concatenação:
SELECT CONCAT(algo,’ - ',(SELECT coluna1 FROM tabelaX where coluna2 < 4)) FROM tabelaZ;
só que essa concatenção não é possível enquanto essa subquery me retornar mais de uma linha… por isso preciso que retorne uma linha só
_ _
Fabiano Abreu Papo Sql - Um blog com tutoriais, dicas e truques sobre SQL[/quote]
Opa… group_concat DEU CERTO… =D
sabe me dizer se é possível e como substituir a vírgula (que separa) por outro caracter?
(Ps.: Não consigo abrir o link na rede em que estou)