Banco de Dados (TI)
Considere uma tabela de banco de dados que represente a
árvore genealógica simplificada da família real brasileira, como
mostrada a seguir.

Rafael pretende escrever um comando SQL que insira nessa
tabela as relações de ancestralidade que podem ser derivadas
das que ali estão. Por exemplo, Dona Leopoldina é
descendente de Dom Pedro I porque descende de Dom Pedro
II, que descende de Dom Pedro I.
Assim, Rafael escreveu o comando SQL
insert into arvore
select distinct a1.ancestral, a2.descendente
from arvore a1, arvore a2
where a2.ancestral = a1.descendente
and not exists
(select * from arvore aa
where aa.ancestral = a1.ancestral
and aa.descendente = a2.descendente)
Para incluir todas as relações de descendência possíveis de
deduzir dos dados originais, Rafael teve que executar esse
comando, pelo menos:
Uma questão respondida. E as próximas?
Crie sua conta para acompanhar acertos, erros e receber recomendações no Meu Próximo Passo.
Criar conta grátis