Luiz André Helfer escreveu:
> Olá pessoal!
>  
> Gostaria de saber se no PostgreSQL existe um select que mostre a 
> estrutura hierarquica de uma tabela.
>  
> Exemplo:
>  
> tabela A
>  
> cd_a
> tp_a
>  
> Tabela B
>  
> cd_b
> tp_b
> A_cd_a
> A_cd_a_sub
>  
> A tabela "A" tem filhos na "B" (A_Cd_a)  e a tabela "B" pode não ser 
> terminal e gerar uma row na tabela "A" (A_Cd_a_sub) e assim 
> sucessivamente até o último nivel. Como retornar esta hierarquia em um 
> select?
>  
> Outro exemplo é um Plano de Conta Contábil que possui um 
> auto-relacionamento que possui diversos níveis (ex: 1 até 9) e o último 
> grau seria o terminal. Como retornar a hierarquia de um conta ora tendo 
> o PAI ora tendo o FILHO..?
>  
> Agradeço se alguém puder me ajudar!
>  
> em Oracle tem algo semelhante..... exemplo em Oracle
>  
> Select Mod.Nome_Modulo
>      , Sys_Connect_By_Path (Mod.Nome_Modulo, '/')
>      , Mod.Mod_Id Id
>      , Mod.Usr_Userid
>      , Mod.Mod_Mod_Id
>   From Modulo Mod
>  Where Mod.Sn_Ativo = 'S'
>    And Mod.Usr_Userid = 'XXXXXXX'
>    And Mod.Tipo_Modulo = 3
> Connect By Prior
>        Mod.Mod_Id = Mod.Mod_Mod_Id
>  Start With
>        Mod.Mod_Mod_Id Is Null


Procure por connectby no diretório contrib/tablefunc.

[]s
Osvaldo



                
_______________________________________________________ 
Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. 
Registre seu aparelho agora! 
http://br.mobile.yahoo.com/mailalertas/ 
 

_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a