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
, 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
Grato,
.
. .
. . .
Helfer, Luiz André
Helfer, Luiz André
__________________________________________________
Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/
_______________________________________________ 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
