Em 6 de julho de 2010 11:59, Thiago <zan...@farmaponte.com.br> escreveu: > A seguinte: > > PostgreSQL 8.1.11 on i686-redhat-linux-gnu, compiled by GCC gcc (GCC) > 4.1.2 20070626 (Red Hat 4.1.2-14) > > Obrigado. > > Em 06/07/2010 11:54, JotaComm escreveu: >> Olá, >> >> >> Em 6 de julho de 2010 11:47, Thiago >> <zan...@farmaponte.com.br >> <mailto:zan...@farmaponte.com.br>> escreveu: >> >> Galera, bom dia. >> >> >> Seguinte, tenho uma tabela de itens de menu e gostaria de fazer um >> select que retornasse o resultado em forma de árvore, mais ou menos como >> no seguinte exemplo: >> >> Tabela >> ID IDPai Menu >> 1 0 Opcoes >> 2 0 Gerencial >> 3 1 Desconectar >> 4 1 Alterar senha >> 5 2 Criar usuarios >> 6 2 Liberar permissoes >> 7 6 Procurar >> 8 6 Qualquer coisa >> >> Com essa tabela gostaria de um select que me trouxesse o resultado >> ordenado primeiramente pelas raizes (registro com IDPai = 0) e depois >> pelos filhos, mas o problema é apenas uma ramificação, cada filho pode >> conter outros filhos e assim por diante. >> >> Por isso preciso que um select ou uma procedure me retorne o seguinte >> resultado: >> >> Resultado >> >> ID IDPai Menu >> 1 0 Opcoes >> 3 1 Desconectar >> 4 1 Alterar senha >> 2 0 Gerencial >> 5 2 Criar usuarios >> 7 5 Procurar >> 8 5 Qualquer coisa >> 6 2 Liberar permissoes >> >> Algo parecido com isso >> >> Alguém já passou por algo parecido e sabe como resolver, estou quebrando >> a cabeça aqui e está um pouco complicado. >> >> >> Qual versão do PG você está utilizando? >>
Em primeiro lugar você está utilizando uma versão bastante antiga. O suporte a esta versão se encerrará em nov/2010 [1], planeje um upgrade de versão. Verifique a função connectby no módulo contrib tablefunc que, creio, atenderá a suas necessidades. (deve existir um diretório contrib em sua instalação do PostgreSQL) Osvaldo [1] http://wiki.postgresql.org/wiki/PostgreSQL_Release_Support_Policy _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral