Na Álgebra relacional um autorrelacionamento acontece quando os elementos de uma entidade se relacionam com eles mesmos.
Ou seja, um item de uma entidade se relaciona com outro item (ou com o mesmo) dessa mesma entidade. Apesar de parecer algo difícil de acontecer há casos, bem comuns, que identificam este tipo de relação. Por exemplo, uma ocorrência da entidade Funcionário, Gerencia e é Gerenciada por ela mesma. Assim se dá, ainda, na classe Militar em que o Oficial é também um Soldado.
SQL
A implementação de um autorrelacionamento, através de um SQL, é feita da seguinte forma (considere que a tabela FUNCIONARIO é preexistente e o EMPREGADO foi promovido a GERENTE)
alter table FUNCIONARIO add constraint EMPR_EMPR_FK foreign key (GERENTE) references FUNCIONARIO (EMPREGADO);
Note que a constraint EMPR_EMPR_FK relaciona a coluna GERENTE como uma chave estrangeira (Foreign Key) da coluna EMPREGADO na tabela FUNCIONARIO
Categoria:Álgebra