Fórum é possivel uma consulta de select que retorna os dados do banco numa mesma tupla? #510556
13/02/2015
0
tenho um select simples que é esse:
SELECT u.situacao,u.id_usuario,u.nome, s.sigla, a.id_avaliacao, a.id_avaliado, atv.descricao_atividade
FROM public.usuarios u, public.setor s, public.avaliacao a, public.atividade atv, public.etapa e
where a.situacao = 6
and id_usuario = a.id_avaliado
and u.id_setor = s.id_setor
and e.id_atividade = atv.id_atividade
and e.id_etapa = a.id_etapa
bom ele retorna a td certo, porem não em apenas em uma unica linha. pq se o usuário tiver varias avaliações esse select vai fazer a busca certa porem vai vim em varias tuplas, no caso o usuario vai ser repetido tres vezes se ele tiver três avaliações. tem como aparecer apenas o usuario e na mesma tupla as avaliacoes do mesmo?
ex:
usuario - ava1 -ava2 -ava3 ?
Waldir Neto
Curtir tópico
+ 0Posts
13/02/2015
Alex Lekao
Nao conheco postgree, so uma duvida, os resultados estao aparecendo linha a linha, certo? uma avaliacao embaixo da outra.
Se nao estou enganado a forma de fazer tudo na mesma linha vc teria que fazer um pivot, nao sei se o PostGree faz pivot.
Caso nao seja isso ou se entendi errado, me desculpe.
Abraco.
Gostei + 0
13/02/2015
Marisiana Battistella
Se for isso, no PostgreSQL temos a CROSSTAB que possui a mesma finalidade do PIVOT do Oracle.
Veja os exemplos de como utilizar esse recurso [url]http://www.postgresql.org/docs/9.1/static/tablefunc.html[/url]
Gostei + 0
13/02/2015
Ronaldo Lanhellas
Se for isso, no PostgreSQL temos a CROSSTAB que possui a mesma finalidade do PIVOT do Oracle.
Veja os exemplos de como utilizar esse recurso [url]http://www.postgresql.org/docs/9.1/static/tablefunc.html[/url]
Correto, a única forma de fazer isso no postgresql é usando CROSSTAB.
Gostei + 0
13/02/2015
Ronaldo Lanhellas
Se for isso, no PostgreSQL temos a CROSSTAB que possui a mesma finalidade do PIVOT do Oracle.
Veja os exemplos de como utilizar esse recurso [url]http://www.postgresql.org/docs/9.1/static/tablefunc.html[/url]
Correto, a única forma de fazer isso no postgresql é usando CROSSTAB.
Gostei + 0
13/02/2015
Waldir Neto
usu1 - ava1
usu1 - ava2
usu1 - ava3
valeu pela dica galera! se resolver volto aqui!!
Gostei + 0
13/02/2015
Marisiana Battistella
Conte-nos se conseguiu fazer e se utilizou o CROSSTAB...
Gostei + 0
13/02/2015
Waldir Neto
função crosstab(unknown, integer) não existe.
vcs tem alguma ideia de como resolver essa situacao?
Gostei + 0
14/02/2015
Ronaldo Lanhellas
crosstab(coluna::text, valor_integer)
Gostei + 0
14/02/2015
Marisiana Battistella
Gostei + 0
18/02/2015
Marisiana Battistella
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)