Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

selecione o nível de conexão dupla por nível <=4 como funciona internamente


Isso cria uma consulta hierárquica. O connect by define como caminhar do nó pai para seu nó filho e para o nó filho de seus filhos. Neste caso, sua definição de conexão é somente quando level >= 4 . O truque aqui é que level é uma pseudo coluna, como rownum , então a condição é satisfeita apenas pelo número menor que igual fornecido (neste caso 4). Você também pode fazer isso com rownum:
select level from dual connect by rownum <= 4; 

Level é usado para contar a profundidade das conexões, então um pai seria 1, um filho 2, um filho do filho 3, etc. Pense nisso como um rownum para consultas hierárquicas.