Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Raphael Elias

select com connect by

Recommended Posts

Fala galera,

 

Estou em cima de um problema e estou tendo muitas dificuldades:

 

Tenho uma tabela de cargos que é:

 

Tabela Cargos

|COD| |NOME| |SUPERIOR|

1, 'PRESIDENCIA', NULL

2, 'DIRETORIA 1', 1

3, 'GERENCIA', 2

4, 'COORDENAÇÃO TI', 3

5, 'DIRETORIA 2', 1

...

 

Ao fazer uma select com o Connect by, tenho os cargos por ordem hierárquica (treeview):

 

|COD| |NOME| |LEVEL|

1, 'PRESIDENCIA', 1

2, 'DIRETORIA 1', 2

3, 'GERENCIA', 3

4, 'COORDENAÇÃO TI', 4

5, 'DIRETORIA 2', 2

...

 

 

Necessito agora no resultado saber em cada linha, quantos cargos estão abaixo de cada um, quantos cargos do próximo nível (que respondem diretamente à ele) e qual o primeiro e último sub-cargo.

 

Ex:

|COD| |NOME| |CARGOS_ABAIXO| |CARGOS_ABAIXO_DIRETO| |PRIMEIRO_SUB| |ULTIMO_SUB|

1, 'PRESIDENCIA', 4, 2, 'DIRETORIA1', 'DIRETORIA2'

...

 

Tentei fazer essa consulta com muitas subselects e além de bagunçada, o Oracle está abrindo o bico e me desconectando.

 

Tentei métodos como Analytics Functions mas com o partition by ele só traz linhas referentes à níveis iguais a da linha, e não os abaixo dele.

 

Se alguém puder me ajudar ficarei muito grato em conta que estou quase desesperado rsrs

 

Um abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já tentou montar uma view como select e usa-la para suas pesquisas ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.